本文介绍了W3C地理定位API在Chrome中不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
以下代码适用于Firefox,但不适用于Google Chrome:
<!DOCTYPE html>
< html>
< head>
< title> title< / title>
< script type =text / javascript>
var successCallback = function(data){
console.log('latitude:'+ data.coords.latitude +'longitude:'+ data.coords.longitude);
};
var failureCallback = function(){
console.log('location failure :(');
};
var logLocation = function( ){
//确定手机是否具有客户端地理位置功能
if(navigator.geolocation){
navigator.geolocation.getCurrentPosition(successCallback,failureCallback);
$ {
alert(功能不可用);
}
};
logLocation();
setTimeout (logLocation,5000);
< / script>
< / head>
< body>
< p>测试< / p>
< ; body>
< / html>
发生什么事了?应该支持W3C Geolocation API。
解决方
- 确保您尚未在Chrome中禁用位置跟踪:
选项>在胡德之下>内容设置>位置
- 由于安全限制,不允许使用
file:///
方案加载的资源进入位置。请参阅。 b $ b
The below code works in Firefox but not in Google Chrome:
<!DOCTYPE html>
<html>
<head>
<title>title</title>
<script type="text/javascript">
var successCallback = function(data) {
console.log('latitude: ' + data.coords.latitude + ' longitude: ' + data.coords.longitude);
};
var failureCallback = function() {
console.log('location failure :(');
};
var logLocation = function() {
//determine if the handset has client side geo location capabilities
if(navigator.geolocation){
navigator.geolocation.getCurrentPosition(successCallback, failureCallback);
}
else{
alert("Functionality not available");
}
};
logLocation();
setTimeout(logLocation, 5000);
</script>
</head>
<body>
<p>Testing</p>
<body>
</html>
What's going on? I thought Google Chrome was supposed to support the W3C Geolocation API.
解决方案
Works perfectly for me - with both Chrome 11 and Firefox 4.0.1 on Win 7
- Make sure you've not disabled location tracking in Chrome:
Options > Under the Hood > Content Settings > Location
- Because of security restrictions, resources loaded with the
file:///
scheme are not allowed access to location. See HTML 5 Geo Location Prompt in Chrome.
这篇关于W3C地理定位API在Chrome中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!
08-01 10:14