2010-08-13 16 views
8

मैं एक वेबसाइट के माध्यम से जा रहा था मैं ले लिया और पृष्ठों में से एक में इस खंड में आए है:हाइपरलिंक में window.location का उपयोग क्यों करें?

<a href="javascript:window.location='<%=GetSignOutUrl()%>';"> 
    // img 
</a> 

जाहिर है किसी को भी जो कभी जावास्क्रिप्ट के बिना साइट का उपयोग किया है ठीक से लॉग आउट करने में सक्षम नहीं होगा (आश्चर्यजनक रूप से पर्याप्त, यह कभी नहीं आया है)।

तो पहली बात यह है कि मन में आता है

<a href="<%=GetSignOutUrl()" onclick="javascript:window.location='<%=GetSignOutUrl()%>';"> 
    // img 
</a> 

तब मुझे एहसास हुआ कि मैं कारण है कि मैं बिल्कुल भी चारों ओर javascript कॉल रखने कर रहा हूँ पता नहीं है है। मैं बस इतना उलझन में हूं कि ऐसा क्यों लिखा गया था जब एक नियमित लिंक ठीक काम करता था। खिड़की के स्थान पर क्या लाभ है एक नियमित लिंक पर है?

यह वेबसाइट में भी एकमात्र जगह है जिसे मैंने ऐसा कुछ देखा है (अब तक)।

संपादित करें: प्रोग्रामर मेरे सामने अत्यधिक सक्षम था, जो वास्तव में है अगर वहाँ कुछ मैं खाते में या अगर वह सिर्फ एक सरल निरीक्षण बनाया नहीं ले रही रहा था कि मैं क्यों सोच रहा था।

+1

शायद ब्राउज़र स्थिति बार में यूआरएल को छिपाने का प्रयास? –

+1

@Russ, क्या यूआरएल किसी भी सामान्य एचटीएमएल की तरह एचटीएमएल में दिखाई नहीं देगा? इसलिए जब क्लिक किया गया, ब्राउज़र सामान्य बार जैसे पता बार में यूआरएल प्रदर्शित करेगा? – DaveDev

+0

क्या यह एकमात्र ऐसा लिंक है या क्या वे इसके परिणामस्वरूप हैं? – Jeroen

उत्तर

3

तीन possibilites हैं:

  1. डेवलपर लागू करने के लिए जावास्क्रिप्ट उपयोगकर्ता के साथ भेजने से पहले का उपयोग कोशिश कर रहा था।
  2. डेवलपर लिंक में href को मुखौटा करने का प्रयास कर रहा था। शायद ऐसा इसलिए था कि इसे प्रभावी ढंग से क्रॉल नहीं किया जाएगा, या स्टेटस बार के साथ कुछ करने के लिए कुछ था।
  3. डेवलपर एक गैर-अनुरूपवादी था।

मैं इसे हटा दें और देखें कि क्या वह टूट जाता है जाएगा। लेकिन फिर फिर, मैं एक अनुरूप हूं।

+1

मैं इस शर्त पर बिंदु 2 के साथ सहमत हूं कि इस बिंदु पर बिंदु 3 के "गैर-अनुरूप" के बजाय "गैर-सक्षम" में बदल दिया जाना चाहिए (मुझे विडंबनात्मक शब्दों को जोड़ना पसंद है :-)) ... वैसे भी कारण मैं दो बिंदुओं से सहमत हूं हो सकता है कि वे नहीं जानते कि Robots.txt फ़ाइल क्या है, और यह एकमात्र तरीका है जिससे वे Google को लगातार लॉग आउट करने की कोशिश कर सकते हैं? – DaveDev

0

क्योंकि एक से अधिक डोमेन संभवतः उपयोग किया जाता है और जो एक अस्पष्ट या नहीं कोड में आसानी से उपलब्ध था यह हो सकता है?

+1

लेकिन यह वैसे भी '<% = GetSignOutUrl()%>' के लिए जिम्मेदार होगा। '<% = GetSignOutUrl()%>' केवल एक यूआरएल (इसे देखकर) देता है क्योंकि 'जावास्क्रिप्ट: window.location' को – DaveDev

+0

हाँ करने के लिए एक यूआरएल की आवश्यकता है, और आप एक सापेक्ष साइन-आउट लिंक भी कर सकते हैं जो होगा डोमेन से परेशान नहीं है। – spig

1

मेरा अनुमान है कि अगर डेवलपर को क्रियान्वित जावास्क्रिप्ट का ग्राहक की क्षमता पर विचार करना नहीं पता था, वे ज्ञात नहीं हो सकता है कि क्या एक href है। यह असंभव है लेकिन असंभव नहीं है।

0

यह खोज इंजन से लिंक छिपाने का प्रयास हो सकता है।

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