2010-01-19 12 views
8

यह कैसे जांचें कि उपयोगकर्ता ने अपने ब्राउज़र में जावास्क्रिप्ट को अक्षम किया है या नहीं? उदाहरण के लिए: यदि आप फ़ायरफ़ॉक्स में जावास्क्रिप्ट को अक्षम करते हैं तो स्टैक ओवरफ्लो साइट शीर्ष पर एक लाल चेतावनी div दिखाती है? इसे कैसे प्राप्त करें?कैसे जांचें कि जावास्क्रिप्ट अक्षम है या नहीं?

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

यहां मैं डिजाइन सिद्धांत (प्रगतिशील वृद्धि इत्यादि) के बारे में चर्चा नहीं करना चाहता हूं, क्या कोई मुझे यह जांचने का एक अच्छा तरीका बता सकता है कि कुकीज़, जावास्क्रिप्ट सक्षम हैं या नहीं? मुझे लगता है कि इसे सर्वर की तरफ किया जाना है, है ना?

धन्यवाद

उत्तर

18

पृष्ठ के लिए एक <noscript> टैग जोड़ें, और यदि जावास्क्रिप्ट अक्षम है, तो संदेश उपयोगकर्ता को दिखाई जाएगी।

तुम भी पता लगा सकते हैं यदि जावास्क्रिप्ट

  • false
  • भागो कुछ जावास्क्रिप्ट कोड है कि true के लिए मूल्य सेट करने के लिए एक छिपी हुई फ़ील्ड जोड़ सकते हैं और उसके डिफ़ॉल्ट मान सेट जावा स्क्रिप्ट कोड चलाने की सफलता के आधार पर सक्षम किया गया है
  • जब आप वापस पोस्ट करते हैं, तो मूल्य की जांच करें।

कुकीज़ की जांच करने के लिए, एक कुकी सेट करें और इसे पढ़ने का प्रयास करें। यदि यह सफल होता है, तो कुकीज़ सक्षम हैं।

+0

, अधिक विशिष्ट जावास्क्रिप्ट विकलांग चेतावनी के लिए

+0

से कुकीज़ सक्षम होने के लिए नेविगेटर.cookieEnabled का उपयोग करें, बस ध्यान रखें, 'नोस्क्रिप्ट' का प्रतिपादन केवल तब होता है जब ब्राउज़र जावास्क्रिप्ट का समर्थन नहीं करता है यदि उपयोगकर्ता ने इसे अक्षम कर दिया है। यदि जावास्क्रिप्ट त्रुटि जेएस निष्पादन को रोकने का कारण बनती है तो इसे प्रस्तुत नहीं किया जाएगा। –

3
<!-- gatewayPage.php --> 
<noscript> 
    <div style="background-color:red;font-size:14pt;"> 
     This site will be very boring unless you enable Javascript! 
    </div> 
    <!-- if you're convinced that bots won't follow your redirect, add this: --> 
    Proceed to <a href="myRealHomePage.php">MySite</a> anyway 
</noscript> 
<script> 
    documment.location = "myRealHomePage.php"; 
</script> 
+0

मुझे उम्मीद है कि खोज मकड़ी जावास्क्रिप्ट रीडायरेक्ट का पालन करेगी। – epascarello

+0

यह एसईओ के लिए बुरा है, क्योंकि खोज इंजन क्रॉलर जावास्क्रिप्ट रीडायरेक्ट का पालन नहीं कर सकते हैं। –

+0

शायद एक बार एक बार, लेकिन googlebot निश्चित रूप से मेरा पीछा करता है। – egrunin

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