我有一个非常标准的地理定位实现,正在JavaScript中使用。
navigator.geolocation.getCurrentPosition(
function (position) {...},
function (error) {....}
);
它在我的主Windows机器上的Internet Explorer / Chrome,物理Android,不同iPhone上的IOS上一直运行良好,但是在具有HighSierra和最新Safari的Macbook Pro上却无法正常运行。
我下载了适用于Windows的旧版Safari,虽然我知道它已旧并且已弃用,但我认为我至少可以看到,但它也无法正常运行,因此我觉得这在某种程度上意味着要进行测试去。
我返回的错误代码为POSITION_UNAVAILABLE。这是真的很奇怪的地方,我实在受够了,因为它真的无法解释,我决定尝试在Safari上进行演示地理位置测试的其他网站,html5demos.com,w3schools等。调试他们的代码。 Safari的旧版本在完全不同的计算机上的所有网站上进行的所有测试也是如此。
我的网站是HTTPS,我已确认Safari在该网站上启用了位置服务,并提示我批准/拒绝位置。我已经确认所有定位服务在MBP系统首选项上均处于活动状态。我不知道这笔交易到底有什么用,我无法确认这是否...在这台机器上...因为这是我唯一可以访问的MBP,但是它再次适用于移动IOS和我所访问的其他所有网站尝试过在MBP上具有Geolocation演示的情况与在Windows Safari 5.1.7的最新可用版本的Windows上的效果不一样。如果这很重要,我就在使用wifi,因为在咨询Google时,出于某种原因有时我会遇到硬连接,这是一个问题。
有什么想法吗?