লক্ষ্য = "_ ফাঁকা" বনাম লক্ষ্য = "_ নতুন"


512

মধ্যে পার্থক্য কি <a target="_new">এবং <a target="_blank">এবং যা আমি ব্যবহার করা উচিত যদি আমি একটি নতুন ট্যাব / উইন্ডো একটি লিঙ্ক খুলতে চান?


73
বর্তমান আনোসারদের সংক্ষিপ্তসার: এর _newকোনও বিশেষ অর্থ নেই। আপনি _white_little_lambপাশাপাশি লিখতে পারে ।
আলভারো গঞ্জালেজ

10
@ x3ro " _new" এর কোনও বিশেষ অর্থ নেই বলে এটি কীভাবে ভুল করে?
vlvaro González

3
@ এলভারোজি.ভিকারিও আমি উল্লেখ করছিলাম "পরিবর্তে আপনি লিখতে পারেন ..."। তবে এ সম্পর্কে ভাবতে ভাবতে আমি যুক্তি দেব যে "এর কোনও বিশেষ অর্থ নেই" "স্পষ্টভাবে নিরুৎসাহিত করা" এর মতো নয়, তবে এটি আমার
নিটপিকিং

5
আমি সবাইকে মনে করিয়ে দিতে চাই যে target="_blank"ছাড়া ব্যবহার rel="noopener"করা একটি সম্ভাব্য সুরক্ষা দুর্বলতা। rel="noopener"আরও জানতে অনুসন্ধান করুন ।
ফ্লিম

উত্তর:


651

"_ব্ল্যাঙ্ক" ব্যবহার করুন

এইচটিএমএল 5 অনুসারে :

একটি বৈধ ব্রাউজিং প্রসঙ্গের নাম হ'ল কমপক্ষে একটি অক্ষর যুক্ত স্ট্রিং যা কোনও ইউ + 005F লো লাইন অক্ষর দিয়ে শুরু হয় না। (আন্ডারস্কোর দিয়ে শুরু হওয়া নামগুলি বিশেষ কীওয়ার্ডের জন্য সংরক্ষিত))

একটি বৈধ ব্রাউজিং প্রসঙ্গের নাম বা কীওয়ার্ড হ'ল একটি স্ট্রিং যা হয় বৈধ ব্রাউজিং প্রসঙ্গ নাম বা এটি ASCII কেস-সংবেদনশীল ম্যাচ যার মধ্যে একটি: _ব্ল্যাঙ্ক, _সেল্ফ, _প্রেেন্ট বা _ টপ। "- উত্স

এর অর্থ হ'ল _newএইচটিএমএল 5 এর মতো কোনও কীওয়ার্ড নেই , এবং এইচটিএমএল 4 (এবং ফলস্বরূপ এক্সএইচটিএমএল) নয় । এর অর্থ, আপনি যদি লক্ষ্য বৈশিষ্ট্যের মান হিসাবে এটি ব্যবহার করেন তবে কোনও সামঞ্জস্যপূর্ণ আচরণ হবে না।

সুরক্ষা সুপারিশ

ড্যানিয়েল এবং মাইকেল যেমন মন্তব্যগুলিতে উল্লেখ করেছেন, _blankকোনও অবিশ্বস্ত ওয়েবসাইটকে লক্ষ্য নির্দেশক ব্যবহার করার সময়, আপনাকে অতিরিক্ত হিসাবে সেট করা উচিত rel="noopener"। এটি খোলার সাইটটিকে জাভাস্ক্রিপ্টের মাধ্যমে ওপেনারের সাথে গোলযোগ করতে বাধা দেয়। আরও তথ্যের জন্য এই পোস্টটি দেখুন ।


7
অনুমান থেকে গাed় পাঠ্য রেখে যাওয়া সেই উদ্ধৃতিটিকে বিভ্রান্তিকরভাবে বৃত্তাকার করে তোলে। আমি এটিকে "এ valid browsing context nameবা মূলশব্দটি এমন কোনও স্ট্রিং যা হয় হয় valid browsing context nameবা ...." হিসাবে পড়েছি
অ্যালেক্স গ্রিন

6
@ এলোশেঙ্কা, @ x3ro: উদ্ধৃতিটিতে পূর্ববর্তী অনুচ্ছেদটি যুক্ত করার জন্য আমি স্বাধীনতা নিয়েছি। এটি বিভ্রান্তি পরিষ্কার করা উচিত।
মার্টারে

5
@ আয়েসিড: অনুমানটি পড়ুন। এইগুলি হল না কারণ "my_custom_name" একটি আন্ডারস্কোর সঙ্গে পূর্বে সমাধান করা যাবে না, বৈধ। সুতরাং "নতুন" ভাল হবে, তবে "_ নতুন" নয়!
ফ্রেসকোমা 21

7
সুরক্ষা অনুসারে এটি একটি গুরুত্বপূর্ণ পঠিত mathiasbynens.github.io/rel-noopener
ড্যানিয়েল এফ

6
যোগ করেন যে জন লোকও যোগ করা উচিত বিবেচনা করুন rel="noopener noreferrer"কারণে জাভাস্ক্রিপ্ট আক্রমণ দুর্বলতার এরtarget="_blank"
মাইকেল

126

target="_blank"ব্যবহারকারী লিঙ্কটিতে ক্লিক করলে নতুন ব্রাউজার ট্যাব বা উইন্ডো তৈরি করতে ব্রাউজারকে নির্দেশ দেবে Using

target="_new"স্পেসিফিকেশন অনুসারে ব্যবহার প্রযুক্তিগতভাবে অবৈধ, তবে যতদূর আমি জানি প্রতিটি ব্রাউজার একইভাবে আচরণ করবে:

  • এটি "_ নতুন" প্রসঙ্গে নাম সহ একটি ট্যাব বা উইন্ডো অনুসন্ধান করবে
  • যদি একটি "_ নতুন" ট্যাব / উইন্ডো পাওয়া যায়, তবে ইউআরএল এতে লোড করা হয়
  • যদি এটি না পাওয়া যায় তবে একটি নতুন ট্যাব / উইন্ডো প্রাসঙ্গিক নাম "_ নতুন" তৈরি করা হবে এবং এতে URL টি লোড করা হবে

নোটটি target="_new"ঠিক একইরকম আচরণ করবে target="new"এবং পূর্ববর্তীটি অবৈধ এইচটিএমএল থাকাকালীন বৈধ এইচটিএমএল।

এটিতে কিছু বিভ্রান্তি যুক্ত করা, এইচটিএমএল 4 এ targetবৈশিষ্ট্যটি হ্রাস করা হয়েছিল। এইচটিএমএল 5-এ এই সিদ্ধান্তটি বিপরীত হয়েছিল এবং এটি আবারও সেই অনুমানের একটি সরকারী অংশ। সমস্ত ব্রাউজারগুলি targetআপনি এইচটিএমএল এর কোন সংস্করণ ব্যবহার করছেন তা সমর্থন করে না, তবে কিছু ডায়ালাইটার আপনার ডক্টিপটি এইচটিএমএল 4 হ'ল ব্যবহারটিকে অবচিত হিসাবে চিহ্নিত করবে।


4
সুতরাং, মূলত, যদি আমার সাথে দুটি (বা আরও) লিঙ্ক থাকে তবে target="_new"তারা উভয়ই একই ট্যাবে খুলবে, একজন অন্যটিকে ওভাররাইট করে?
আর্ট-সলোপভভ

4
@ আর্ট সলোপোভ যতদূর আমি জানি, হ্যাঁ প্রতিটি ব্রাউজারে এটি ঘটবে। তবে "_ নতুন" একটি টার্গেটের জন্য একটি অবৈধ মান তাই এটি করবেন না।
অভি বেকার্ট

25

টিএল; ডিআর
ইউএসই _ব্ল্যাঙ্ক

লিঙ্কযুক্ত দস্তাবেজটি কোথায় খুলবেন তা লক্ষ্য বৈশিষ্ট্য নির্দিষ্ট করে।

USAGE: target="xyz"  [don't forget double quotes]

_blank  Opens the linked document in a new window or tab
_self   Opens the linked document in the same frame as it was clicked (this is default)
_parent     Opens the linked document in the parent frame
_top    Opens the linked document in the full body of the window 
framename   Opens the linked document in a named frame

SINCE "_new" এই আইটি-র কোনওটিই "ফ্রেমেনাম" এর আওতায় আসবে না তাই কোনও ব্যবহারকারী যদি সেই হাইপারলিংকে পুনরায় ক্লিক করেন তবে এটি বিদ্যমান ট্যাবটির পরিবর্তে কোনও নতুন ট্যাব খুলবে না। যদিও _ব্ল্যাঙ্কে ব্যবহারকারী দু'বার ক্লিক করলে 2 টি নতুন ট্যাব খোলে।


21

আমি জানি এটি একটি পুরানো প্রশ্ন এবং সঠিক উত্তর, ব্যবহার _blank, বেশ কয়েকবার উল্লেখ করা হয়েছে, তবে ব্যবহার <a target="somesite.com" target="_blank">Link</a> করা একটি সুরক্ষা ঝুঁকি

এটি ব্যবহারের জন্য প্রস্তাবিত ( পারফরম্যান্স বেনিফিট ):

<a href="somesite.com" target="_blank" rel="noopener noreferrer">Link</a>

1
সুরক্ষা ঝুঁকির দিকটিতে কেবল কিছু অতিরিক্ত পাঠ: jitbit.com/alexblog/…
8

14

এটি আগে জিজ্ঞাসা করা হয়েছিল তবে:

"টার্গেট =" _ নতুন "নির্দিষ্ট করে এমন প্রতিটি লিঙ্কটি সেই উইন্ডোটিকে নাম অনুসারে সন্ধান করে এবং এটিতে খোলে।

আপনি যদি লক্ষ্য = "_ ফাঁকা" ব্যবহার করেন তবে বর্তমান উইন্ডোটির উপরে প্রতিটি সময় একটি নতুন ব্র্যান্ড তৈরি হবে।

এখান থেকে: http://thedesignspace.net/MT2archives/000316.html



12

এটি আমার বোধগম্য target = whateverযে নামের সাথে কোনও ফ্রেম / উইন্ডো সন্ধান করবে। যদি এটি না পাওয়া যায় তবে এটি নামের সাথে একটি নতুন উইন্ডো খুলবে। যদি whatever == "_new", এটি প্রদর্শিত হবে যেমন আপনি _blankবাদে ব্যবহার করেছেন .....

সংরক্ষিত লক্ষ্যগুলির একটির নাম ব্যবহার করে "দেখানো" পর্বটি বাইপাস করা হবে। সুতরাং, target = "_blank"একটি ডজন লিঙ্কে একটি ডজন ফাঁকা উইন্ডো খুলবে, তবে target = whateverএকটি ডজন লিঙ্কে কেবল একটি উইন্ডো খোলা হবে। target = "_new"এক ডজন লিঙ্কে আপত্তিজনক আচরণ দিতে পারে। আমি এটি বেশ কয়েকটি ব্রাউজারে চেষ্টা করে দেখিনি, তবে কেবল একটি উইন্ডো খোলা উচিত।

অন্তত এইভাবে আমি বিধিগুলি ব্যাখ্যা করি।


9

সাবধানতা - সর্বদা "কোটস" অন্তর্ভুক্ত মনে রাখবেন - কমপক্ষে ক্রোমে, target=_blank(কোনও উদ্ধৃতি নেই) একইরকম নয় target="_blank"(উদ্ধৃতি সহ)।

পরেরটি প্রতিটি লিঙ্ক নতুন ট্যাব / উইন্ডোতে খোলে। প্রাক্তন (অনুপস্থিত উদ্ধৃতিগুলি) আপনি একটি নতুন ট্যাব / উইন্ডোতে ক্লিক করা প্রথম লিঙ্কটি খোলেন, তারপরে আপনার ক্লিক করা প্রতিটি পরবর্তী লিঙ্কের সাথে একই ট্যাব / উইন্ডোটিকে ওভাররাইট করে (যার নাম নিখোঁজ উদ্ধৃতিতেও রয়েছে)।


খুব ভাল পয়েন্ট। _ব্ল্যাঙ্ককে উদ্ধৃতিগুলিতে আবদ্ধ না করে আমি এই সমস্যাটিতে ছুটলাম। আমার সদ্য নির্মিত "ফাঁকা" ট্যাবটি থেকে আমি যে লিঙ্কটি ক্লিক করেছি সেটিতে একটি নতুন ট্যাব খোলার পরিবর্তে সেই ট্যাবটিতে লিখিত সামগ্রী লেখা শেষ হয়েছিল। উদ্ধৃতিগুলিতে _ব্ল্যাঙ্কটি আবদ্ধ করা ক্রোমকে প্রতিবার একটি নতুন ট্যাব খুলতে বাধ্য করে।
স্টিভ শেহেরার

এছাড়াও, "_ব্ল্যাঙ্ক" "_BLANK" নয় তা নিশ্চিত করে নিন। ক্রোম প্রকৃতপক্ষে কেস সম্পর্কে উদ্বিগ্ন এবং একাধিকবার "_BLANK" ব্যবহার করে কোনও নতুন ট্যাব খুলবে না।
স্টিভ শেহেরার

5
  • টার্গেট মান হিসাবে _ব্ল্যাঙ্ক প্রতিবার একটি নতুন উইন্ডো স্প্যান করবে,
  • _ নতুন কেবল একটি নতুন উইন্ডো স্প্যান করবে।

এছাড়াও, নতুন টার্গেট মান সহ ক্লিক করা প্রতিটি লিঙ্ক পূর্ববর্তী বানানো উইন্ডোতে লোড হওয়া পৃষ্ঠাটি প্রতিস্থাপন করবে।

নিজের জন্য চেষ্টা করার জন্য _ ব্ল্যাঙ্ক বা নতুন নতুন ব্যবহার করার জন্য আপনি এখানে ক্লিক করতে পারেন


_newবর্ণিত হিসাবে কোন ব্রাউজার সম্মানিত আপনি তালিকাবদ্ধ করতে পারেন ?
দিমা তিস্নেক

@ কারমা এই আচরণটি আমার জানা সমস্ত ব্রাউজারগুলিতে বর্ণিত, _newএকটি যাদুবিদ্যার মূল শব্দ নয়, এটি কেবল একটি নাম, যদি সেই নামের উইন্ডো উপস্থিত থাকে তবে এটি আবার ব্যবহার করবে, অন্যথায় এটি খুলবে। এই উইন্ডোটির জন্য একাধিক লিঙ্কগুলি ক্লিক করা একাধিক নতুন পৃষ্ঠা খোলার পরিবর্তে কেবল নামযুক্ত উইন্ডোতে বিভিন্ন পৃষ্ঠা খুলবে open
স্ক্রাগার

অনুমানটি আসলে ব্রাউজারগুলিকে পরামর্শ দেয় যে তারা ignoreলক্ষ্যবস্তু করে যা আন্ডারলাইন দিয়ে শুরু হয় তবে কীওয়ার্ড নয়। কোনও ব্রাউজার যখন একটি অবৈধ টার্গেট নাম "উপেক্ষা" করে তখন কী করা উচিত সে সম্পর্কে কোনও পরামর্শ নেই। সম্ভাবনার অন্তর্ভুক্ত রয়েছে: (1) এটি "_ব্ল্যাঙ্ক" এর মতো আচরণ করুন (২) এটি উইন্ডো নামের মতো আচরণ করুন (যেন কোনও অবৈধ আন্ডারস্কোর ছিল না) (3) এটি স্পষ্টভাবে খালি উইন্ডোর নামের মতো আচরণ করুন (4) এটির মতো আচরণ করুন কোন লক্ষ্য বৈশিষ্ট্য ছিল। - যে কোনও ব্রাউজার যে কোনও ব্যাখ্যা বেছে নিতে পারে।
জেসি চিশলম

0

কোনও লিঙ্কের লক্ষ্য বৈশিষ্ট্য ব্রাউজারটিকে একটি নতুন ব্রাউজার উইন্ডোতে গন্তব্য পৃষ্ঠাটি খুলতে বাধ্য করে। _blankলক্ষ্য মান হিসাবে ব্যবহার করা প্রতিটি সময় একটি নতুন উইন্ডো _newছড়িয়ে দেবে এবং ব্যবহারের সময় কেবল একটি নতুন উইন্ডো স্প্যান করবে এবং একটি লক্ষ্য মান সহ ক্লিক করা প্রতিটি লিঙ্ক _newপূর্ববর্তী বানানো উইন্ডোতে লোড হওয়া পৃষ্ঠাটি প্রতিস্থাপন করবে


0

কোনও নতুন ট্যাব / উইন্ডোতে কোনও লিঙ্ক খোলার জন্য আপনি ব্যবহার করবেন <a target="_blank">

মান _blank= লক্ষ্যযুক্ত ব্রাউজিং প্রসঙ্গে: একটি নতুন: আপনার ব্রাউজিং সেটিংসের উপর নির্ভর করে ট্যাব বা উইন্ডো

মান _new= বৈধ নয়; কোনও উপাদানটিতে লক্ষ্যযুক্ত বৈশিষ্ট্যের জন্য এইচটিএমএল 5 তে কোনও মান নেই

একটি উপাদানের সমস্ত মানগুলির সাথে লক্ষ্যবস্তুযুক্ত বৈশিষ্ট্য: ভিডিও ডেমো


-1

আইফ্রেমেড পৃষ্ঠাগুলিতে কাজ করার সময় নতুন ব্যবহার দরকারী is যেহেতু টার্গেট = "_ ফাঁকা" কৌশলটি করে না এবং একই আইফ্রেমে পৃষ্ঠাটি খোলায় ... টারফেট নতুন হ'ল ইফ্রেমে পৃষ্ঠাগুলির জন্য সেরা সমাধান। শুধু আমার পাঁচ সেন্ট।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.