2010-05-06 8 views
6

नेविगेटर.ऑनलाइन अभी भी सच हो रही है जब मैं वाई-फाई बंद करता हूं (ओएस एक्स में मेरी नोटबुक पर हवाई अड्डा)। यह counterintuitive व्यवहार है। लेकिन जब मैं फ़ायरफ़ॉक्स जैसे ब्राउज़र में "ऑफलाइन काम करता हूं" सेट करता हूं, तो यह सही ढंग से गलत लौटाता है। क्या यह उम्मीद है?नेविगेटर.ऑनलाइन अभी भी सही है जब वाईफाई बंद कर दिया गया है, ब्राउज़र में "ऑफ़लाइन काम" सेट करते समय झूठी,

alert(navigator.onLine ? "online" : "offline"); 
+0

फायरफॉक्स के (और IE और ओपेरा) कार्यान्वयन गलत है। इस प्रभाव पर मेरी टिप्पणी यहां देखें: https://bugzilla.mozilla.org/show_bug.cgi?id=654579#c9 – thewoolleyman

उत्तर

3

हां। ब्राउज़र पृष्ठ पर नेटवर्क कनेक्टिविटी जानकारी प्रदान नहीं करता है, बल्कि मूल्य के रूप में कार्य ऑफलाइन की स्थिति का उपयोग करता है।

+0

यह अजीब लगता है क्योंकि अगर मैं एक आईफोन पर हवाई जहाज मोड चालू करके वाई-फाई और सेलुलर डेटा बंद करता हूं , और फिर उस पृष्ठ पर पुनः लोड किए बिना वापस लौटें, यह ऑफ़लाइन के रूप में सत्य लौटाता है (जो सही है)। – chimerical

+0

ब्राउज़र पता लगाना चाहते हैं कि नेटवर्क कनेक्टिविटी डाउन है और फिर * कार्य ऑफ़लाइन चर को 'false' पर सेट करें। हालांकि, उपयोगकर्ता हमेशा इस चर को बदल सकता है। –

0

window.addEventListener उपयोग नेटवर्क अपडेट पता लगाने के लिए:

window.addEventListener('online', amIOnline); 
window.addEventListener('offline', amIOffline); 

function amIOnline(){ 
    console.log('online'); 
} 

function amIOffline(){ 
    console.log('offline'); 
} 
संबंधित मुद्दे