Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 地理定位不';我不能在手机上工作_Javascript_Android_Mobile_Geolocation - Fatal编程技术网

Javascript 地理定位不';我不能在手机上工作

Javascript 地理定位不';我不能在手机上工作,javascript,android,mobile,geolocation,Javascript,Android,Mobile,Geolocation,我有一个简单的JavaScript代码,可以让用户协调,在计算机上运行良好,但在手机上却不能这样说 function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition); } else{x.innerHTML="Geolocation is not supported by this browser.";} }

我有一个简单的JavaScript代码,可以让用户协调,在计算机上运行良好,但在手机上却不能这样说

function getLocation()
  {
  if (navigator.geolocation)
    {
    navigator.geolocation.getCurrentPosition(showPosition);
    }
  else{x.innerHTML="Geolocation is not supported by this browser.";}
}
这是我从学校得到的。第一次它问我是否想分享我的位置(同意),当我按下按钮执行该功能时,什么也没有发生(也没有错误消息),在我的电脑上工作,所以它不是代码。 在两种不同的设备上试用过:galaxy nexus和galaxy s2都是果冻。 在chrome、chrome beta、firefox和内置浏览器上试用。 在一些手机上,甚至懒得弹出“共享位置”信息。
如何解决此问题?

我以前遇到过此问题,我认为无法强制打开共享位置,您至少必须提示用户是否要打开位置服务。然而,一个详细说明如何提示android用户打开共享位置的线程。此外,我会避免使用W3S

良好地理定位应用程序:

我以前就遇到过这个问题,我认为不可能强制打开共享位置,至少您必须提示用户是否要打开位置服务。然而,一个详细说明如何提示android用户打开共享位置的线程。此外,我会避免使用W3S

良好地理定位应用程序:
Html5地理定位需要用户权限。如果您不希望这样,可以使用外部定位器,就像它们提供JSON和JSONP回调解决方案一样

  • JSON:
  • JSONP回调:
一个简单的javascript示例:

<!DOCTYPE html>
<html>
<head>
<title>Geo City Locator by geoip-db.com</title>
</head>
<body>
    <div>Country: <span id="country"></span></div>
    <div>State: <span id="state"></span></div>
    <div>City: <span id="city"></span></div>
    <div>Postal: <span id="postal"></span></div>
    <div>Latitude: <span id="latitude"></span></div>
    <div>Longitude: <span id="longitude"></span></div>
    <div>IP address: <span id="ipv4"></span></div>                             
</body>

<script>

    var country = document.getElementById('country');
    var state = document.getElementById('state');
    var city = document.getElementById('city');
    var postal = document.getElementById('postal');
    var latitude = document.getElementById('latitude');
    var longitude = document.getElementById('longitude');
    var ip = document.getElementById('ipv4');

    function callback(data)
    {
        country.innerHTML = data.country_name;
        state.innerHTML = data.state;
        city.innerHTML = data.city;
        postal.innerHTML = data.postal;
        latitude.innerHTML = data.latitude;
        longitude.innerHTML = data.longitude;
        ip.innerHTML = data.IPv4;
    }

    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = 'https://geoip-db.com/json/geoip.php?jsonp=callback';
    var h = document.getElementsByTagName('script')[0];
    h.parentNode.insertBefore(script, h);

</script> 
</html>

geoip-db.com提供的地理城市定位器
国家:
声明:
城市:
邮政:
纬度:
经度:
IP地址:
var country=document.getElementById('country');
var state=document.getElementById('state');
var city=document.getElementById('city');
var postal=document.getElementById('postal');
var latitude=document.getElementById('latitude');
var longitude=document.getElementById('longitude');
var ip=document.getElementById('ipv4');
函数回调(数据)
{
country.innerHTML=data.country\u name;
state.innerHTML=data.state;
city.innerHTML=data.city;
postal.innerHTML=data.postal;
latitude.innerHTML=data.latitude;
longitude.innerHTML=data.longitude;
ip.innerHTML=data.IPv4;
}
var script=document.createElement('script');
script.type='text/javascript';
script.src=https://geoip-db.com/json/geoip.php?jsonp=callback';
var h=document.getElementsByTagName('script')[0];
h、 parentNode.insertBefore(脚本,h);

Html5地理定位需要用户权限。如果您不希望这样,可以使用外部定位器,就像它们提供JSON和JSONP回调解决方案一样

  • JSON:
  • JSONP回调:
一个简单的javascript示例:

<!DOCTYPE html>
<html>
<head>
<title>Geo City Locator by geoip-db.com</title>
</head>
<body>
    <div>Country: <span id="country"></span></div>
    <div>State: <span id="state"></span></div>
    <div>City: <span id="city"></span></div>
    <div>Postal: <span id="postal"></span></div>
    <div>Latitude: <span id="latitude"></span></div>
    <div>Longitude: <span id="longitude"></span></div>
    <div>IP address: <span id="ipv4"></span></div>                             
</body>

<script>

    var country = document.getElementById('country');
    var state = document.getElementById('state');
    var city = document.getElementById('city');
    var postal = document.getElementById('postal');
    var latitude = document.getElementById('latitude');
    var longitude = document.getElementById('longitude');
    var ip = document.getElementById('ipv4');

    function callback(data)
    {
        country.innerHTML = data.country_name;
        state.innerHTML = data.state;
        city.innerHTML = data.city;
        postal.innerHTML = data.postal;
        latitude.innerHTML = data.latitude;
        longitude.innerHTML = data.longitude;
        ip.innerHTML = data.IPv4;
    }

    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = 'https://geoip-db.com/json/geoip.php?jsonp=callback';
    var h = document.getElementsByTagName('script')[0];
    h.parentNode.insertBefore(script, h);

</script> 
</html>

geoip-db.com提供的地理城市定位器
国家:
声明:
城市:
邮政:
纬度:
经度:
IP地址:
var country=document.getElementById('country');
var state=document.getElementById('state');
var city=document.getElementById('city');
var postal=document.getElementById('postal');
var latitude=document.getElementById('latitude');
var longitude=document.getElementById('longitude');
var ip=document.getElementById('ipv4');
函数回调(数据)
{
country.innerHTML=data.country\u name;
state.innerHTML=data.state;
city.innerHTML=data.city;
postal.innerHTML=data.postal;
latitude.innerHTML=data.latitude;
longitude.innerHTML=data.longitude;
ip.innerHTML=data.IPv4;
}
var script=document.createElement('script');
script.type='text/javascript';
script.src=https://geoip-db.com/json/geoip.php?jsonp=callback';
var h=document.getElementsByTagName('script')[0];
h、 parentNode.insertBefore(脚本,h);