Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 反弹标记,缩放后不反弹_Javascript_Google Maps_Google Maps Api 3_Google Maps Markers - Fatal编程技术网

Javascript 反弹标记,缩放后不反弹

Javascript 反弹标记,缩放后不反弹,javascript,google-maps,google-maps-api-3,google-maps-markers,Javascript,Google Maps,Google Maps Api 3,Google Maps Markers,我在谷歌地图上遇到的这个问题,我提出了一个解决方案 如果我把地图拖到看不到标记的地方,然后放大(通常是3或4级),当我缩小到可以看到标记的地方后,它就不再反弹了,如果我点击它,它会再次反弹 这是一个浏览器问题吗?我在这里面临什么?我认为这是Google Marker动画的默认行为。由于您离开了贴图范围,因此无需在幕后继续动画 如果你真的想让你的标记在你看到它的时候反弹,你可以添加“bounds_changed”地图事件。每次缩放或拖动地图时,都应检查标记是否在可见地图区域内,如果在可见地图区域内

我在谷歌地图上遇到的这个问题,我提出了一个解决方案

如果我把地图拖到看不到标记的地方,然后放大(通常是3或4级),当我缩小到可以看到标记的地方后,它就不再反弹了,如果我点击它,它会再次反弹


这是一个浏览器问题吗?我在这里面临什么?

我认为这是Google Marker动画的默认行为。由于您离开了贴图范围,因此无需在幕后继续动画

如果你真的想让你的标记在你看到它的时候反弹,你可以添加“bounds_changed”地图事件。每次缩放或拖动地图时,都应检查标记是否在可见地图区域内,如果在可见地图区域内,则刷新反弹行为:

google.maps.event.addListener(map, 'bounds_changed', function(event) {

    if(map.getBounds().contains(marker.position)){

        marker.setAnimation(google.maps.Animation.BOUNCE);
    };
});

奇怪。当地图足够缩小时,似乎会触发
单击
事件。看见当您放大并单击标记时,控制台日志中的事件处理程序会传递两条消息。您是否看到标记仍然静止不动!对如果有人找不到解释,那么它可能会被报告为一个问题。
google.maps.event.addListener(map, 'bounds_changed', function(event) {

    if(map.getBounds().contains(marker.position)){

        marker.setAnimation(google.maps.Animation.BOUNCE);
    };
});