Google地图"center_changed"不止一次触发我的功能

Hon*_*rsx 5 javascript google-maps-api-3

正如标题所暗示的那样,我只是在地图中添加了一个"center_changed"监听器,并且该函数不止一次运行.我假设它是因为地图的中心在地图休息之前改变了很多次,但我认为这就是"拖动"的意思,并且"center_changed只会在休息后触发一次?我知道它多次触发的唯一原因是因为我在图标上有一个阴影,它在整个黑色之前大约两秒变暗和变暗.如果有人需要我的代码,则在下面.

         google.maps.event.addListener(map, 'center_changed', function() {
    var zoomLevel = map.getZoom();
        if (zoomLevel > 7) {
            clearAll();
            addmarker1();
            addmarker2();
            addmarker3();
            addmarker4();
                    }
        else {
            clearAll();
            }   
            });
Run Code Online (Sandbox Code Playgroud)

Pre*_*ari 12

只有在您的地图休息后才会触发这两个功能

如果你希望你的函数只在用户拖动时(不是以编程方式)执行,那么使用...

       google.maps.event.addListener(map, 'dragend', function(){...}
Run Code Online (Sandbox Code Playgroud)

但是如果你想让你的函数在拖动时执行,则以编程方式更改缩放(例如setZoom,fitBounds),然后使用...

       google.maps.event.addListener(map, 'idle', function(){...}
Run Code Online (Sandbox Code Playgroud)