我刚刚使用以下方式进行Google搜索:'获取当前位置',我得到了这个结果:
它没有询问我的位置,所以我猜这是基于IP位置,或者是来自我网络的多个信息的交叉引用(已记录的Google帐户,移动设备等)。
有没有办法使用Google Maps API或任何相关的Google服务来获取这些信息,而无需询问用户对浏览器的许可,以获取其位置?
谢谢
答案 0 :(得分:0)
它不是Maps-API的一部分,但您可以使用JSAPI(例如,通过JSAPI加载Maps-API)。
虽然它不再受到官方支持,但仍有(但不得设置)属性google.loader.ClientLocation
google.load("maps", "3",{callback:function() {
try{
opts={
center:new google.maps.LatLng( google.loader.ClientLocation.latitude,
google.loader.ClientLocation.longitude),
zoom:8
};
}catch(e){alert('no location available');
opts={
center: new google.maps.LatLng(0,0),
zoom: 0
};
}
var map = new google.maps.Map(document.getElementById("map-canvas"),
opts);
}
});

html,body,#map-canvas { height: 100%; margin: 0; padding: 0 }

<div id="map-canvas"></div>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
&#13;
当然,它只能像基于IP的地理定位一样准确......不多