2013-11-29 8 views
15

का उपयोग कर वर्तमान टैब पर बने रहें window.open("http://www.google.com"); फ़ंक्शन का उपयोग करके ब्राउज़र में एक नया टैब खोलना संभव है, लेकिन इसे पृष्ठभूमि में खोलें और वर्तमान पृष्ठ पर बने रहें? जब मैं हाइपरलिंक में पृष्ठ पर क्लिक करें नए टैब में होगा एक ही है, लेकिन लिंक खुल जाएगा ...जावास्क्रिप्ट के साथ एक नया टैब खोलें लेकिन जावास्क्रिप्ट

मैं इस समाधान की कोशिश लेकिन यह केवल फ़ायरफ़ॉक्स link में काम करते हैं, लेकिन मैं सभी ब्राउज़रों में करना चाहते हैं।

उत्तर

0

उपयोग window.open()

var win = window.open('http://stackoverflow.com/', '_blank'); 
if(!win) 
{ 
//Broswer has blocked it 
alert('Please allow popups for this site'); 
} 

JSFilder

5

दोनों में इस बात की पुष्टि के रूप में: source1 source2

वहाँ एक समारोह है कि सभी ब्राउज़रों भर काम करता है नहीं है। पॉपअप के लिए विकल्प हैं, लेकिन पॉपअप ब्लॉकर्स का उपयोग करने के लिए यह एक अच्छा विचार नहीं है।

पहले स्रोत को दोहराने के लिए, यह प्रत्येक उपयोगकर्ता के लिए पृष्ठभूमि में एक नया टैब खोलने का निर्णय लेने के लिए एक ब्राउज़र सेटिंग है या नहीं। और क्योंकि उपयोगकर्ता इसे अपने ब्राउज़र सेटिंग्स में तय करते हैं, इसलिए आपको असंगत अनुभव मिलेंगे।

+2

मैं के लिए खोज की कोशिश ~ एक गैर ध्यान केंद्रित नया टैब खोलकर के विषय पर 60 मिनट और यह केवल है नवंबर 2017 तक इस विषय पर सही वैध उत्तर! समीक्षा के लिए – poitroae

2

कोशिश निम्नलिखित सहायक हो सकता है

<button id="open">open</button> 

document.getElementById('open').onclick = function() { 
    window.open('http://google.com'); 
}; 

नोट: आप कर सकते हैं पृष्ठभूमि में नहीं खुले टैब जावास्क्रिप्ट का उपयोग करते हुए, क्योंकि इस बारे में में उपयोगकर्ताओं की प्राथमिकताओं में सेट है: यदि आप कोई नियंत्रण नहीं है, जो config ऊपर। के बारे में में सेटिंग: फ़ायरफ़ॉक्स में config है:

यह तभी संभव है यदि आप पहले से ही दबाया नियंत्रण कुंजी गतिशील रूप से घटना के लिए क्लिक करें उत्पन्न हो जाएगा।

उदा। Ctrl + क्लिक हमेशा नया टैब खोल देगा और आपको वर्तमान टैब पर रखेगा।

browser.tabs.loadDivertedInBackground = सच

+1

धन्यवाद @Pippin –

संबंधित मुद्दे