检查GoogleMap Canvas元素是否已空闲

Sem*_*Sem 7 javascript google-maps-api-3

我的问题很简单.

google.maps.event.addListenerOnce(map, 'idle', function() {
    // code
});
Run Code Online (Sandbox Code Playgroud)

在地图当前忙于缩放或平移之后,将触发此代码段.不是在它已经空闲的时候.

有没有办法在if语句中检查画布的状态?所以当它已经闲置时你会在// code没有添加听众的情况下做到这一点吗?

Dr.*_*lle 5

没有记录状态的空闲状态信号,但是您可以自己实现。

假设您在地图初始化后立即调用此方法:

google.maps.event.addListener (map, 'idle', function(){
           this.lastBounds=this.getBounds();
}); 
Run Code Online (Sandbox Code Playgroud)

然后,您可以检查lastBounds-property是否等于地图的当前边界:

if (map.lastBounds==map.getBounds()){
    //call function immediately
}else{
    //add listener
}
Run Code Online (Sandbox Code Playgroud)