为什么与其他浏览器相比,IE9的地理定位支持被破坏了



我正在构建一个地图应用程序,并注意到尽管IE9支持地理定位api,但它错误地计算了纬度/经度。

其他用户也注意到了这一点http://social.technet.microsoft.com/Forums/en-IE/ieitprocurrentver/thread/aea4db4e-0720-44fe-a9b8-09917e345080,但再多的谷歌搜索也不会从开发者博客/更多的技术读者那里得到任何结果。。。我觉得很奇怪,没有人在IE9中测试他们的地理定位代码!?

以下是我的示例代码:https://gist.github.com/1710256

这里有人知道为什么会这样吗,因为这使得检测地理位置api的功能几乎不可能。此外,我注意到回退(如Paul Irish的polyfill中所提供的)也存在与IE9的原生实现中相同的问题?

是否有其他人在IE9上遇到过地理定位问题?

感谢任何帮助/建议。

根据此页面,Firefox使用谷歌定位服务:

它是如何工作的?

当你访问一个位置感知网站时,Firefox会问你想要共享您的位置。

如果您同意,Firefox会收集附近无线网络的信息访问点和计算机的IP地址然后Firefox发送信息到默认的地理定位服务提供商谷歌定位服务,以获得您的位置估计那个位置然后与请求网站共享估计。

根据这个页面,Internet Explorer(相当可预测)使用微软定位服务:

如果您允许,Internet Explorer将在Microsoft定位服务的帮助下近似您的位置

报告位置的差异将是由于底层数据库的差异,例如,谷歌数据库可能列出了微软没有的WiFi点或IP地址(反之亦然)。

我找不到任何关于更改IE位置提供商的信息,尽管Firefox似乎确实为其他提供商提供了服务,但我目前还不知道如何更改。

请注意,对我来说,Internet Explorer实际上更准确地报告了我的位置(两个浏览器都能正确地获取我的位置,但在IE中,错误半径约为10英里,而在Firefox中约为20英里)。

最新更新