पर क्लिक बीच क्या अंतर है:window.location.href एक एंकर
<a href />
बनाम
window.location.href = ...
बुला?
पर क्लिक बीच क्या अंतर है:window.location.href एक एंकर
<a href />
बनाम
window.location.href = ...
बुला?
जहाँ भी संभव हो, तो आप window.location.href
से अधिक <a href="foo.html">
का उपयोग करना चाहिए, बहुत अच्छे कारणों की एक संख्या के लिए।
window.location
इनwindow.open('thepage.html', '_self');
यानी:
एंकर के साथ आप लक्ष्य संपत्ति निर्दिष्ट कर सकते हैं, लेकिन window.location.href के साथ आप नहीं कर सकते हैं। आम तौर पर जब उपयोगकर्ता किसी अन्य स्थान पर ब्राउज़र को रीडायरेक्ट करना चाहता है तो एंकर का उपयोग किया जाता है, window.location.href का उपयोग तब किया जाता है जब रीडायरेक्शन जावास्क्रिप्ट का उपयोग करके किया जाता है।
ठीक है, यह सच है लेकिन थोड़ा भ्रामक है। आप उस ऑब्जेक्ट द्वारा जावास्क्रिप्ट संस्करण में अंतर्निहित लक्ष्य का चयन करते हैं जिसे आप विधि कहते हैं। ** विंडो **। location.href वर्तमान विंडो को बदलता है, लेकिन ** mytarget **। location.href एक और विंडो/फ्रेम बदल देगा (माना जाता है कि चर को उचित घोषित किया गया था)। –
भले ही, आपको लक्ष्य विशेषता का उपयोग नहीं करना चाहिए। –
और किसने कहा था? वैसे भी वह मतभेदों के लिए पूछता है और यह उनमें से एक है इसलिए मतदान करना जारी रखें लेकिन यह सही है। @dtsazza: आप सही हैं लेकिन वह खिड़की के बारे में बात कर रहा है। स्थान कुछ नहीं है। स्थान – mck89
दिया अन्य उत्तर के अलावा, href
विशेषता sapecified के साथ एक <a>
तत्व पर क्लिक ब्राउज़र href
में यूआरएल के लिए नेविगेट करने के लिए, के लिए जावास्क्रिप्ट सक्षम है या नहीं या नहीं का कारण होगा।
यह न भूलें कि उपरोक्त उत्तरों के अलावा, हाइपरलिंक (एंकर टैग) पर क्लिक करने से उस तत्व के onclick
हैंडलर (यदि कोई हो) ट्रिगर होगा, जबकि जावास्क्रिप्ट संस्करण स्पष्ट रूप से विंडो के स्थान को बदलता नहीं है और बस बदलता है।
यदि आप एक क्लिक अनुकरण करना चाहते हैं तो मैन्युअल रूप से ऑनक्लिक हैंडलर को जावास्क्रिप्ट से आना संभव है, लेकिन आपको इसे मैन्युअल रूप से करना याद रखना चाहिए। आपके द्वारा पोस्ट किए गए स्निपेट इस संबंध में भिन्न होंगे, जो किसी भी व्यवहारिक मतभेद का कारण हो सकता है।
window.location.href = 'thepage.html'
स्थापना कॉल करने जैसा ही है लक्ष्य एक ही खिड़की तक सीमित है, क्योंकि वह स्थान है जहां स्थान संपत्ति है।
window.open('thepage.html', '_blank');
यह वही है:
<a href="thepage.html">...</a>
आप खुले विधि के बजाय एक अलग लक्ष्य निर्दिष्ट करने के लिए, एक नई विंडो की तरह उपयोग कर सकते हैं: यह एक लक्ष्य विशेषता के बिना एक लिंक पर क्लिक जैसा ही होता है कि लक्ष्य के साथ एक लिंक पर क्लिक के रूप में प्रभाव:
<a href="thepage.html" target="_blank">...</a>
तुम भी एक नई विंडो खोलने के लिए खुला विधि का उपयोग कर सकते हैं। वापसी मान खिड़की के लिए एक संदर्भ है, तो आप उपयोग कर सकते हैं कि कि वर्तमान विंडो के बजाय खिड़की का स्थान निर्धारित करने के लिए:
var w = window.open('about:blank', '_blank');
w.location.href = 'thepage.html';
document.referrer का यूआरएल के लिए सर्वर और ग्राहक पर एक संदर्भ है वह पेज जिसमें उपयोगकर्ता को नए पेज पर जाने के लिए क्लिक किया गया लिंक- लिखित स्थान विधियां नहीं हैं।
ग्रेट उत्तर। मैं नई विंडो में खोलने के लिए Shift + क्लिक भी जोड़ूंगा और Ctrl + नए टैब में खोलने के लिए क्लिक करें। –