我有两个功能:
function showMarkers() {
hotspotsIterator = 0;
for(var i = 0; i < table.length; i++) {
var obj = table[i];
if(obj && obj.marker) {
var obj = table[i];
obj.marker.setMap(map);
}
}
}
function hideMarkers() {
for(var i = 0; i < table.length; i++) {
var obj = table[i];
if(obj && obj.marker) {
obj.marker.setMap(null);
}
}
}
首先是显示标记,第二是隐藏它们。当我第一次使用showMarkers()时,会执行Animation.DROP。但是当我隐藏它们并再次显示时,动画没有运行,标记就会显示出来。
有人能告诉我如何重新放下标记吗?没有创建新实例?
修改
我已经创建了代码来重新创建相同的标记并且它可以工作,但它根本不是优雅的解决方案!
用于标记的Google文档无法解决问题。
答案 0 :(得分:2)
在obj.marker.setMap(map);
:obj.marker.setAnimation(google.maps.Animation.DROP);
此处引用:Marker Animations