2013-02-13 15 views
13

मैं एक बटन को छिपाना() या शो() करना चाहता हूं जो उपयोगकर्ताओं को उनके वर्तमान स्थान का उपयोग करने की अनुमति देता है, चाहे वे वर्तमान में स्थान का उपयोग करने की अनुमति दे रहे हों या नहीं ब्राउज़र सेटिंग। नीचे दिया गया कोड केवल तभी जांचता है जब ब्राउज़र भौगोलिक स्थान का समर्थन करता है और नहीं कि यह विशेष उपयोगकर्ता इसे अनुमति दे रहा है या नहीं।जांचें कि उपयोगकर्ता ब्राउज़र में स्थान सेटिंग बंद कर दी गई है

if (navigator.geolocation) { 
    navigator.geolocation.getCurrentPosition(showPosition); 
    } else { 
x.innerHTML="Geolocation is not supported by this browser.";} 
} 

क्या कोई बुलियन मूल्य है जिसे मैं अपने ब्राउज़र सेटिंग के लिए पहचान सकता हूं यदि मुझे वर्तमान में स्थान की अनुमति है तो मुझे बताएं?

किसी भी सुझाव के लिए धन्यवाद।

उत्तर

18

आप http://www.w3schools.com/html/html5_geolocation.asp

क्या आप क्या करना चाहते त्रुटियों की जाँच को देखने के लिए अगर वे इसे अनुमति या अनुरोध को अस्वीकार किया है पढ़ी है।

function getLocation() { 
    if (navigator.geolocation) { 
    navigator.geolocation.getCurrentPosition(showPosition,showError); 
    } else { 
    x.innerHTML = "Geolocation is not supported by this browser."; 
    } 
} 

function showPosition(position) { 
    x.innerHTML = "Latitude: " + position.coords.latitude + "<br>Longitude: " + position.coords.longitude;  
} 

function showError(error) { 
    switch(error.code) { 
    case error.PERMISSION_DENIED: 
     x.innerHTML = "User denied the request for Geolocation." 
     break; 
    case error.POSITION_UNAVAILABLE: 
     x.innerHTML = "Location information is unavailable." 
     break; 
    case error.TIMEOUT: 
     x.innerHTML = "The request to get user location timed out." 
     break; 
    case error.UNKNOWN_ERROR: 
     x.innerHTML = "An unknown error occurred." 
     break; 
    } 
} 
+2

https है की अनुमति देगा: // developer.mozilla.org/en-US/docs/Using_geolocation –

4

नीचे कोड आप 43+ क्रोम पर navigator.geolocation अनुमति अनुरोध लागू बिना अनुमति की स्थिति की जांच और Firefox के लिए 46+

navigator.permissions && navigator.permissions.query({name: 'geolocation'}).then(function(PermissionStatus) { 
    if(PermissionStatus.state == 'granted'){ 
      //allowed 
    }else{ 
     //denied 
    } 
}) 

यहाँ Reference Link

+0

आईई/सफारी/ओपेरा जैसे अन्य ब्राउज़रों के बारे में क्या? –

+0

अभी तक, यह उन ब्राउज़रों में समर्थित नहीं है। मैं एक संदर्भ लिंक के साथ जवाब अद्यतन कर रहा हूँ। –

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