2012-03-27 11 views
9

मैं, एक स्क्रिप्ट का पता लगाता है कि उपयोगकर्ता जावास्क्रिप्ट अक्षम है या नहीं, और हाँ अगर लिखना उन्हें किसी अन्य पृष्ठ पर रीडायरेक्टनहीं जावास्क्रिप्ट जांच स्क्रिप्ट + पुनर्निर्देशन

हालांकि (के mysite.com/enablejavascript मान लीजिए) चाहते हैं, मैं कहाँ से शुरू करू मुझे पता नहीं है! धन्यवाद और।

+8

आप 'उपयोग करने के लिए ' –

+1

@BrianDriscoll की आवश्यकता होगी: यहाँ अपने नमूना कोड है। आपने इसे जवाब क्यों नहीं लिखा? यह सबसे ऊपर है! – gdoron

+0

यदि जावास्क्रिप्ट अक्षम है, तो आप अपनी स्क्रिप्ट को चलाने के लिए वास्तव में कैसे प्राप्त करेंगे? –

उत्तर

4

जावा-स्क्रिप्ट अक्षम होने पर आप एक स्क्रिप्ट लिखना कैसे चाहते हैं ...?

यह नहीं किया जा सकता है। <noscript> के साथ जावास्क्रिप्ट अक्षम होने पर आप एक संदेश दिखा सकते हैं। MDN पर

<noscript> टैग:

एचटीएमएल NoScript तत्व() को परिभाषित करता है, तो पृष्ठ पर एक स्क्रिप्ट प्रकार असमर्थित है या यदि पटकथा वर्तमान ब्राउज़र में बंद कर दिया है एचटीएमएल का एक वर्ग सम्मिलित करने के लिए।

23

Gdoron पहले से ही नोस्क्रिप्ट का उल्लेख किया। meta refresh के साथ मिलकर ¹ यदि आप जावास्क्रिप्ट अक्षम हैं तो आप उपयोगकर्ताओं को रीडायरेक्ट कर सकते हैं।

एक जावास्क्रिप्ट रीडायरेक्ट location.replace(URL) के साथ किया जा सकता है।

<head> 
    <noscript> 
    <meta http-equiv="refresh" content="0; url=http://example.com/without-js" /> 
    </noscript> 

    <script> 
    location.replace('http://example.com/with-js'); 
    </script> 
</head> 

नोस्क्रिप्ट + मेटा रिफ़्रेश का उदाहरण: http://pastehtml.com/view/bsrxxl7cw.html

1) विकिपीडिया लेख के drawbacks अनुभाग ध्यान रहे!

मेटा ताज़ा टैग कुछ कमियां हैं: एक पेज बहुत जल्दी रीडायरेक्ट करता है तो

  • (कम से कम 2-3 सेकंड), अगले पन्ने पर "वापस" बटन का उपयोग कर कुछ ब्राउज़रों कारण हो सकता है स्थानांतरित करने के लिए रीडायरेक्ट पेज पर वापस, जहां रीडायरेक्ट फिर से होगा। यह प्रयोज्यता के लिए बुरा है, क्योंकि इससे पाठक को अंतिम वेबसाइट पर "अटक" हो सकता है।
  • एक पाठक किसी भिन्न पृष्ठ पर रीडायरेक्ट किया जा सकता है या नहीं, जो उपयोगकर्ता असंतोष का कारण बन सकता है या सुरक्षा के बारे में चिंताओं को बढ़ा सकता है।
+3

+1। पता नहीं था कि 'मेटा रीफ्रेश' चीज। अच्छा लगा। मैंने आपके जवाब में कमी को जोड़ा। आशा है कि आपको – gdoron

+1

पर कोई फर्क नहीं पड़ता। मुझे कोई फर्क नहीं पड़ता। धन्यवाद :) – kay

+0

ठीक है यह मेरे लिए ठीक काम करता प्रतीत होता है। हालांकि विजुअल स्टूडियो का दावा है कि नोस्क्रिप्ट को सिर में एम्बेड नहीं किया जा सकता है और मेटा को नोस्क्रिप्ट में एम्बेड नहीं किया जा सकता है। मेरा DOCTYPE और HTML टैग नाम स्थान है संबंधित इनमें से किसी हैं? – naskew

-2

इस प्रयास करें: जावा स्क्रिप्ट अक्षम किया गया है तो एक php लिंक

<script type="text/javascript"> 

document.write("<button type='button' onclick='somefunction()' >Some Text</button>"); 

</script> 

<noscript> 

<?php echo "<a href='redirectfile.php'>Some Text</a>"; ?> 

</noscript> 
+0

कृपया अपने समाधान के बारे में अधिक वर्णनात्मक रहें। देखें: [उत्तर कैसे दें] (http://stackoverflow.com/questions/how-to-answer) – askmish

2

आप HTML नोस्क्रिप्ट तत्व में अनुप्रेषित को संयोजित करना चाहिए प्रदर्शित करते हैं। मुझे यह JavaScript redirection जनरेटर मिला।

<!-- Pleace this snippet right after opening the head tag to make it work properly --> 

<!-- This code is licensed under GNU GPL v3 --> 
<!-- You are allowed to freely copy, distribute and use this code, but removing author credit is strictly prohibited --> 
<!-- Generated by http://insider.zone/tools/client-side-url-redirect-generator/ --> 

<!-- REDIRECTING STARTS --> 
<link rel="canonical" href="https://yourdomain.com/"/> 
<noscript> 
    <meta http-equiv="refresh" content="0;URL=https://yourdomain.com/"> 
</noscript> 
<!--[if lt IE 9]><script type="text/javascript">var IE_fix=true;</script><![endif]--> 
<script type="text/javascript"> 
    var url = "https://yourdomain.com/"; 
    if(typeof IE_fix != "undefined") // IE8 and lower fix to pass the http referer 
    { 
     document.write("redirecting..."); // Don't remove this line or appendChild() will fail because it is called before document.onload to make the redirect as fast as possible. Nobody will see this text, it is only a tech fix. 
     var referLink = document.createElement("a"); 
     referLink.href = url; 
     document.body.appendChild(referLink); 
     referLink.click(); 
    } 
    else { window.location.replace(url); } // All other browsers 
</script> 
<!-- Credit goes to http://insider.zone/ --> 
<!-- REDIRECTING ENDS --> 
संबंधित मुद्दे