मेरे पास एक लंगर टैग है जिसमें एक स्थानीय href मान है, और एक जावास्क्रिप्ट फ़ंक्शन है जो href मान का उपयोग करता है लेकिन इसे सामान्य रूप से जाने की तुलना में थोड़ा अलग स्थान पर निर्देशित करता है। टैग लग रहा है
<a onclick="return follow(this);" href="sec/IF00.html"></a>
और एक जावास्क्रिप्ट फ़ंक्शन जो दिखता है
baseURL = 'http://www.someotherdomain.com/';
function follow(item) {
location.href = baseURL + item.href;
}
मुझे उम्मीद है कि item.href
यह "सेकंड / IF00.html" का एक छोटा तार लौटाएगा, लेकिन इसके बजाय यह पूर्ण Href, "http://www.thecurrentdomain.com/sec/IF00.html" लौटाएगा। वहाँ एक रास्ता है कि मैं लंगर <a>
टैग में डाल के रूप में सिर्फ कम href बाहर खींच सकता है ? या क्या मैं प्राकृतिक HTML व्यवहार द्वारा खो देता हूं?
मुझे लगता है कि मैं ऐसा करने के लिए एक स्ट्रिंग हेरफेर का उपयोग कर सकता हूं, लेकिन यह मुश्किल हो जाता है क्योंकि मेरा स्थानीय पृष्ठ वास्तव में "http://www.thecurrentdomain.com/somedir/somepath/sec/IF00.html" हो सकता है, और मेरा Iref क्षेत्र हो सकता है या इसमें एक उपनिर्देशिका नहीं हो सकती है (पूर्व href="page.html"
बनाम के लिए href="sub/page.html"
), इसलिए मैं हमेशा अंतिम स्लैश से पहले हर चीज को हटा नहीं सकता।
आप आश्चर्यचकित हो सकते हैं कि मैं यह क्यों अनुरोध कर रहा हूं, और यह इसलिए है क्योंकि यह पृष्ठ को बहुत अधिक क्लीनर बना देगा। यदि यह संभव नहीं है कि केवल शॉर्ट हियर (जैसा कि एंकर <a>
टैग में डाला जाए ), तो मैं शायद टैग में एक अतिरिक्त फ़ील्ड सम्मिलित कर सकता हूं, जैसे कि link="sec/IF00.html"
, लेकिन फिर से, यह थोड़ा गड़बड़ हो जाएगा।