zl程序教程

您现在的位置是:首页 >  其他

当前栏目

GoogleMapV3绑定气泡窗口(infowindow)Dom事件实现代码

事件代码 实现 窗口 绑定 dom 气泡
2023-06-13 09:14:51 时间
在调试功能模块时候,发现怎么用什么方法都无法在infowindow里面添加的div进行绑定事件处理。郁闷啊!上网搜了好多方法也没用,
后来想想还是查了一下官方的API,发现了google.maps.InfoWindow下面的Events里面有个domready事件

官方解释
ThiseventisfiredwhenthecontainingtheInfoWindow"scontentisattachedtotheDOM.Youmaywishtomonitorthiseventifyouarebuildingoutyourinfowindowcontentdynamically.
本人理解大概的意思就是InfoWindow里面动态添加的Dom元素完成后的回调函数。
js是个单线程的引擎,只有等到DOM创建完成之后才能绑定事件,这样理解起来应该很简单了吧!
看同事写的js代码,里面好多setTimeout之类的延迟估计没弄清楚脚本执行的顺利觉的延迟几秒就行执行,其实问题很大。哪些脚本要先执行,哪些要后执行都是有顺序的。
google.maps.event.addDomListenergoogleMap提供的监听Dom元素的事件

上代码

复制代码代码如下:

google.maps.event.addListener(infowindow,"domready",function(){
varCancel=document.getElementById("Cancel");
varOk=document.getElementById("Ok");
google.maps.event.addDomListener(Cancel,"click",function(){infowindow.close();});
google.maps.event.addDomListener(Ok,"click",function(){infowindow.close();});
});

官方API:https://developers.google.com/maps/documentation/javascript/3.exp/reference?hl=zh-cn