在浏览器中启用或禁用地理定位时发生的火灾事件

问题描述 投票:0回答:1

我想在浏览器中启用地理位置时显示或隐藏html。

我想基于用户交互来执行此操作,如果他们单击“确认”,则将获得html,如果他们拒绝,则不会。

如果页面加载,并且授予了权限,我也想显示html,如果不是,则不应该。

我已经审查了以下内容。

navigator.permissions.query({name:'geolocation'}).then(function(permissionStatus) {

    //console.log('geolocation permission state is ', permissionStatus.state);

    permissionStatus.onchange = function() {

        if (permissionStatus.state == 'granted ') {

            console.log('geolocation permission state has changed to ', this.state);

        }

    };

});

并检查页面加载。

navigator.permissions && navigator.permissions.query({name: 'geolocation'}).then(function(PermissionStatus) {

    if( PermissionStatus.state == 'granted' ) {

        console.log('hello');

    }

});

但是这些都没有记录。

我上面的代码也包装在(function( $ ) { })( jQuery );中,因为我也在这里使用jQuery。为了确保这不是问题,我已除去上述所有代码,但仍然无法跟踪更改事件并无法在页面加载时检查地理位置。

javascript browser
1个回答
0
投票
if ( permissionStatus.state == 'granted' ) {

应该是

if ( this.state == 'granted ' ) {
© www.soinside.com 2019 - 2024. All rights reserved.