我想要多种选项来为我们的 IE8 笔记本电脑进行地理定位,并研究了 Google Chrome 框架(有效)和 jquery polyfill(这是我正在尝试使用的)。示例来自的网站是webshims,我已经验证所提到的演示页面在 IE8 中有效,但我无法为自己重新创建示例。这是我的jsp:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8>
<title>Geolocation</title>
<script src="<c:url value="/js/jquery-1.6.4.min.js"/>" type="text/javascript"></script>
<script src="<c:url value="/js/modernizr-latest.js"/>" type="text/javascript"></script>
<script src="<c:url value="/js/polyfiller.js"/>" type="text/javascript"></script>
<script type="text/javascript">
//http://afarkas.github.com/webshim/demos/demos/geolocation.html
$.webshims.polyfill();
navigator.geolocation.getCurrentPosition(function(pos){ $("#status").html("found you! latitude: "+ pos.coords.latitude +"/longitude: " + pos.coords.longitude); });
</script>
</head>
<body>
<p>Finding your location: <span id="status">checking...</span></p>
</body>
</html>
它适用于任何原生支持地理定位的浏览器,但 polyfill 似乎并没有为 IE8 完成它的工作。我收到以下错误:
网页错误详情
用户代理:Mozilla/4.0(兼容;MSIE 8.0;Windows NT 5.1;Trident/4.0;chromeframe/15.0.874.121;.NET CLR 2.0.50727;.NET CLR 3.0.4506.2152;.NET CLR 3.5.30729)时间戳:星期三, 2011 年 12 月 7 日 17:48:06 UTC
消息:'navigator.geolocation' 为空或不是对象行:13 字符:7 代码:0 URI:../GeoLocation/jquery.action
我是否缺少使此功能正常运行的东西?