我的设备是HTC One X,浏览器是Chrome。我试图让HTML5 GeoLocation在浏览器中工作,但是我无法在iOS和桌面上运行,但是对于我的Android没有任何效果。下面是我的代码:HTML5地理位置不适用于Android
<!DOCTYPE html>
<html>
<head>
<meta content='text/html; charset=UTF-8' http-equiv='Content-Type' />
<meta content='width=device-width, initial-scale=1, maximum-scale=1' name='viewport'>
<title>HTML5 Test</title>
<script src='http://cloud.keepiteasy.net/libs/modernizr.custom.89661.js' type='text/javascript'></script>
<script src='http://cloud.keepiteasy.net/libs/jquery.js' type='text/javascript'></script>
</meta>
</head>
<body>
<script type="text/javascript">
$(function() {
if (Modernizr.geolocation) {
navigator.geolocation.getCurrentPosition(success, error);
}
function success(position) {
var lat = position.coords.latitude;
var lng = position.coords.longitude;
alert(lat);
alert(lng);
}
function error(err) {
if(err.code == 1) {
alert("Error: Access is denied!");
}else if(err.code == 2) {
alert("Error: Position is unavailable!");
}
}
});
</script>
</body>
</html>
更新:我固定的doctype 更新:我更新了误差函数 UPDATE:在我的HTC我仍然得到什么,甚至不是一个错误。在我的Nexus 7上(刚刚尝试过),它工作正常...跆拳道,硬件问题?但其他基于GPS的应用程序工作...
似乎有点奇怪的是,当您尝试使用HTML5的东西时,请使用XHTML文档类型:-) – Pointy 2013-02-10 22:26:23
您的代码适用于我的HTC One X [此处](http://jsbin.com/ilijeh/1 )但这是一个HTML5的文档类型... – Pointy 2013-02-10 22:28:29
适用于Nexus 7上的破解DOCTYPE。如果用一个真正的错误处理程序替换错误处理程序,你会得到什么?例如如果(错误代码== 1)警报(“错误:访问被拒绝!”),则功能错误(错误){错误} (错误:位置不可用!);否则如果(错误代码= 2){0}错误:位置不可用! } }(nick [from [here](http://www.tutorialspoint.com/html5/geolocation_getcurrentposition.htm)) – 2013-02-10 22:35:43