有没有办法先检查是否设置了infoWindow并在使用前在地图上
marker.infowindow.close();
如果没有设置而不在地图上,脚本不起作用?我想在关闭之前检查if语句吗?
答案 0 :(得分:1)
您可以使用变量来检查infoWindow是否存在:
var currentInfoWindow = null;
if(currentInfoWindow !== null){
currentInfoWindow.close();
}
然后,在调用infoWindow.open()
之后将currentInfoWindow分配给新的infoWindow:
currentInfoWindow = infoWindow;
这对于确保地图上只打开一个infoWindow特别有用。
答案 1 :(得分:0)
您可以在Javascript中使用typeof
功能。
if (typeof(marker.infowindow) === "undefined"){
//object doesn't exist
}
else{
//the object does exist
marker.infowindow.close();
}
答案 2 :(得分:0)
您可以为您用作InfoWindow内容的div提供ID。
如果InfoWindow在地图上打开,document.getElementById('content-div-id')
将返回div,否则将null
。