- 40
- 0
问题:IOS系统首次进入页面,有进if (navigator.geolocation){}添加,但没有执行 navigator.geolocation.getCurrentPosition(this.showPosition.bind(this), this.showError.bind(this), options);
没进入showPosition(),也没有进入showError()事件
安卓机正常,不会出现这个问题
代码:
if(navigator.geolocation){
console.log(navigator.geolocation);
alert(1);
const options = {
enableHightAcuracy: false, // 指示浏览器获取高精度的位置,默认为false
timeout: 6000, // 指定获取地理位置的超时时间,默认不限时,单位为毫秒
maximunAge: 30000 // 最长有效期,在重复获取地理位置时,此参数指定多久再次获取位置。
};
navigator.geolocation.getCurrentPosition(this.showPosition.bind(this), this.showError.bind(this), options);
} else {
console.log('该浏览器不支持获取地理位置');
alert('该浏览器不支持获取地理位置');
this.cityName = sessionStorage.getItem(COMMON.CITY_NAME);
this.goPage();
} - 共 0 条
- 全部回答
-
忽略的感觉很无助 普通会员 1楼
navigator.geolocation.getCurrentPosition()是 Google Maps API 提供的一种方法,用于获取当前用户在浏览器或设备上的地理位置信息。如果你的网页在首次加载时没有执行navigator.geolocation.getCurrentPosition(),你可以通过以下步骤解决这个问题:- 在 HTML 文件中引入 Google Maps API 确保你正确地设置了 Google Maps JavaScript API 地址: ```html
2. 使用 `window.onload` 替换 `navigator.geolocation.getCurrentPosition()` 方法的首次加载事件:javascript window.onload = function() { navigator.geolocation.getCurrentPosition(function(position) { // 在这里处理地理位置信息 console.log(position.coords); }); };3. 在首次加载页面时,通过 `window.onload` 事件监听器获取页面加载完成后 `window` 对象的 `window.onload` 属性:javascript window.onload = function() { // 首次加载页面时,获取页面加载完成后 window 对象的 window.onload 属性 var windowLoaded = window.onload; window.onload = function() { // 当页面加载完成后,执行navigator.geolocation.getCurrentPosition()方法 navigator.geolocation.getCurrentPosition(function(position) { console.log(position.coords); }); }; };`` 4. 如果在首次加载页面时navigator.geolocation.getCurrentPosition()` 方法仍然未执行,可能有以下几种情况:a. JavaScript 异步加载问题:在首次加载页面时,JavaScript 代码可能尚未加载完成,此时
navigator.geolocation.getCurrentPosition()方法可能无法被触发。 b. 地理位置信息获取失败:Google Maps API 有时可能在请求地理位置信息时出现错误,例如网络错误、用户拒绝授权、请求超时等。你可以在position.coords属性中查看具体的错误信息。 c. 使用的 JavaScript 版本不支持navigator.geolocation.getCurrentPosition()方法:如果你使用的 JavaScript 版本不支持navigator.geolocation.getCurrentPosition(),则在首次加载页面时,你需要先执行window.location.reload()或window.location.assign()方法刷新页面,以确保 JavaScript 程序的加载和navigator.geolocation.getCurrentPosition()方法的正确使用。 d. 使用的浏览器不支持 Google Maps API:在首次加载页面时,你需要检查浏览器是否支持 Google Maps API。通常,只有 Chrome 和 Firefox 支持 Google Maps API,其他浏览器可能不支持。 e. 使用的浏览器阻止了 JavaScript 异步加载:浏览器可能阻止了 JavaScript 异步加载,例如阻止了 JavaScript 代码的加载和window.onload事件监听器的触发。你可以在浏览器设置中阻止异步加载,或者使用其他方法在页面加载完成后立即执行navigator.geolocation.getCurrentPosition()方法。总之,如果你在首次加载页面时
navigator.geolocation.getCurrentPosition()方法仍然未执行,可能有多种原因,需要通过以下方式解决:a. 确保 JavaScript 异步加载正确:确保 JavaScript 代码已加载完成,且
window.onload事件监听器已触发。 b. 确保 Google Maps API 地理位置信息获取正确:检查position.coords属性,确认地理位置信息是否已获取。 c. 检查浏览器支持情况:确保浏览器支持 Google Maps API,且浏览器未阻止 JavaScript 异步加载。 d. 检查浏览器设置:查看浏览器设置,确认浏览器是否阻止了 JavaScript 异步加载或window.onload事件监听器的触发。 e. 使用其他方法:如果上述步骤仍无法解决问题,可以尝试在页面加载完成后立即执行navigator.geolocation.getCurrentPosition()方法,或者在页面加载完成后立即刷新页面以确保 JavaScript 程序的加载和navigator.geolocation.getCurrentPosition()方法的正确使用。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
