Html में नए टैब में लिंक कैसे खोलें?


390

मैं एक HTML परियोजना पर काम कर रहा हूं, और मुझे यह पता नहीं चल सकता है कि जावास्क्रिप्ट के बिना एक नए टैब में लिंक कैसे खोला जाए।

मुझे पहले से ही पता है कि <a href="http://www.WEBSITE_NAME.com"></a>एक ही टैब में लिंक खुलता है। किसी भी विचार यह कैसे एक नए में खुला बनाने के लिए?


40
उपयोग<a href="url" target="_blank">...</a>
रोहित अग्रवाल

1
जैसा कि रोहित कहते हैं, परम लक्ष्य = "_ रिक्त" जोड़ें, हालांकि, फायरफॉक्स पर कम से कम यदि आप दो अंडरस्कोर लक्ष्य = "__ रिक्त" करते हैं, तो यह एक नए टैब में खुलेगा, लेकिन उसी डबल uncorecore का उपयोग करके अन्य लिंक पर क्लिक करने से नया खुलता है पिछले नए टैब में पृष्ठ, जिसका अर्थ है कि आपके पास केवल एक अतिरिक्त टैब खुला है।
जस्टिन लेवेन

जवाबों:


599

लिंक की 'लक्ष्य' विशेषता निर्धारित करें _blank:

<a href="#" target="_blank" rel="noopener noreferrer">Link</a>

संपादित करें: अन्य उदाहरणों के लिए, यहां देखें: http://www.w3schools.com/tags/att_a_target.asp

(नोट: मैंने पहले blankइसकी _blankवजह से सुझाव दिया था , यदि उपयोग किया जाता है, तो यह एक नया टैब खोलेगा और फिर उसी टैब का उपयोग करेगा यदि लिंक फिर से क्लिक किया गया है। हालांकि, यह केवल इसलिए है, क्योंकि GolezTrol ने बताया है, यह नाम को संदर्भित करता है a फ्रेम / विंडो, जिसे तब सेट किया जाता और इस्तेमाल किया जाता है जब लिंक को उसी टैब में खोलने के लिए फिर से दबाया जाता है)।

सुरक्षा पर विचार!

rel="noopener noreferrer"दुर्भावनापूर्ण रूप से मूल टैब को संशोधित करने में सक्षम होने से नए खुले टैब को रोकने के लिए है। इस भेद्यता के बारे में अधिक जानकारी के लिए ये संसाधन देखें:


16
विशेष लक्ष्य सभी अंडरस्कोर से शुरू होते हैं। blankएक फ्रेम या विंडो का नाम होगा। यह काम करने के लिए लग सकता है, क्योंकि एक नई विंडो या टैब संभवत: तब खोला जाएगा जब कोई नाम 'रिक्त' के साथ मौजूद नहीं होगा, लेकिन लिंक पर एक दूसरा क्लिक पृष्ठ को उसी टैब में फिर से खोलने के बजाय फिर से एक और खोलना चाहिए।
गोलेज़ट्रॉल

2
खैर, मुझे लगता है कि यह अमान्य नहीं है, यह सिर्फ अलग है। blankआप के बजाय बस के रूप में अच्छी तरह से उपयोग कर सकते हैं foo, मुझे लगता है, जबकि _blankवास्तव में एक विशेष अर्थ है। मुझे अन्यथा साबित करने के लिए कोई जानकारी नहीं मिल सकती है। क्या आप?
गोलेज़ट्रॉल

2
@ सफ़्फ़ान नहीं, _blankठीक हो जाएगा; लिंक प्रत्येक अलग टैब में खुलेंगे। यदि आप अंडरस्कोर के बिना एक नाम निर्दिष्ट करते हैं, (जैसे blank) लिंक एक ही टैब में खुलेंगे।
शारकोमोर्कवुड

6
एक टिप: _blank के कारण भेद्यता के बारे में पता होना। अधिक जानकारी medium.com/@jitbit/...
Aistis

1
भेद्यता mathiasbynens.github.io/rel-noopener के साथ एक और पृष्ठ जो यह अपने आप में एक उदाहरण है।
फोनिक्स

99

अपनी आवश्यकताओं के अनुसार इनमें से किसी एक का उपयोग करें।

लिंक किए गए दस्तावेज़ को एक नई विंडो या टैब में खोलें:

 <a href="xyz.html" target="_blank"> Link </a>

लिंक किए गए दस्तावेज़ को उसी फ्रेम में खोलें, जिस पर क्लिक किया गया था (यह डिफ़ॉल्ट है):

 <a href="xyz.html" target="_self"> Link </a>

पैरेंट फ़्रेम में लिंक किए गए दस्तावेज़ खोलें:

 <a href="xyz.html" target="_parent"> Link </a>

लिंक किए गए दस्तावेज़ को विंडो के पूर्ण निकाय में खोलें:

 <a href="xyz.html" target="_top"> Link </a>

नामांकित फ़्रेम में लिंक किए गए दस्तावेज़ को खोलें:

 <a href="xyz.html" target="framename"> Link </a>

MDN देखें


जानकारी के लिए धन्यवाद। क्लिक करने पर नए टैब में लिंक कैसे खोलें?
शजील अफजल

HTML में कोड का उपयोग करें, जैसा कि ऊपर साझा किया गया है। जब आप लक्ष्य = "_ रिक्त" का उपयोग करते हैं, तो अधिकांश नए ब्राउज़र डिफ़ॉल्ट रूप से एक नए टैब में लिंक खोलते हैं
शिक्षार्थी हमेशा 10

1
ध्यान रखें कि target="_blank"एक भेद्यता है, आप इसके बारे में mathiasbynens.github.io/rel-noopener
फोनिक्स

36

यदि आप अपनी पूरी साइट के लिए एक बार कमांड बनाना चाहते हैं, तो हर लिंक के बाद ऐसा करने के बजाय। अपनी वेब साइट और बिंगो के प्रमुख के भीतर इस स्थान का प्रयास करें।

<head>
<title>your text</title>
<base target="_blank" rel="noopener noreferrer">
</head>

उम्मीद है की यह मदद करेगा


3
rel = "noopener noreferrer" जोड़ना न भूलें
Blundering Philosopher


6

उपयोग कब करें target='_blank':

HTML संस्करण (कुछ डिवाइस इसका समर्थन नहीं करते हैं):

<a href="http://chriscoyier.net" target="_blank">This link will open in new window/tab</a>

सभी उपकरणों के लिए जावास्क्रिप्ट संस्करण:

Rel = "बाहरी" का उपयोग पूरी तरह से मान्य है

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
    $('a[rel="external"]').attr('target', '_blank');
</script>

और नीचे के साथ Jquery के लिए कोशिश कर सकते हैं:

$("#content a[href^='http://']").attr("target","_blank");

यदि ब्राउज़र सेटिंग आपको नई विंडो में खोलने की अनुमति नहीं देती है:

href = "google.com";
onclick="window.open (this.href, ''); return false";

1
rel = "noopener noreferrer" जोड़ना न भूलें
Blundering Philosopher

6

target="_blank"विशेषता काम करेगी। बस rel="noopener noreferrer"संभावित भेद्यता को हल करने के लिए जोड़ना मत भूलना । उस पर अधिक यहाँ: https://dev.to/ben/the-targetblank-vulnerability-by-example

<a href="https://www.google.com/" target="_blank" rel="noopener noreferrer">Searcher</a>

यहाँ भेद्यता की एक और व्याख्या: mathiasbynens.github.io/rel-noopener
Blundering Philosopher

2

आप उपयोग कर सकते हैं:

<a href="http://www.WEBSITE_NAME.com"  target="_blank"> Website</a>

हालाँकि उपरोक्त आपकी साइट को फ़िशिंग हमलों के लिए असुरक्षित बनाते हैं। आप इसे अपने लिंक में rel = "noopener noreferrer" जोड़कर कुछ ब्राउज़रों में होने से रोक सकते हैं। इस जोड़े के साथ, उपरोक्त उदाहरण बन जाता है:

<a href="http://www.WEBSITE_NAME.com" rel="noopener noreferrer" target="_blank">Website.com</a> 

अधिक जानकारी के लिए देखें: https://www.thesitewizard.com/html-tutorial/open-links-in-new-window-or-tab.shtml


0

आप इसे इस तरह से कर सकते हैं:

<a href="https://duckduckgo.com/" target="_blank" rel="noopener noreferrer">Open Duck</a>

सुरक्षा और गोपनीयता के बारे में अधिक जानकारी के लिए MDN पर निम्न url को भी देखें:

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#Security_and_privacy

जिसके बदले में लक्ष्य = "_ रिक्त" नाम के एक अच्छे लेख का लिंक है - जो अब तक का सबसे कम जोखिम है :

https://www.jitbit.com/alexblog/256-targetblank---the-most-underestimated-vulnerability-ever/

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.