繁体   English   中英

事件侦听器仅附加到循环中的最后一个条目

[英]Event listener only attaches to the last entry in the loop

按照本教程,还附带小提琴,我想将事件侦听器附加到每个标记对象。 完成的方式是我循环遍历我的 Json 对象,同时循环将事件处理程序附加到每个标记对象。 我正在做确切的事情,但使用 Json 而不是 XML。 代码基本相同,除了索引是如何发生的。 我使用 jquery 中的getJSON而不是downloadURL 例如:

const arr = json; 
for (var r of arr){
    id = r.id;
    .....
    ..... 
    var marker = new google.maps.Marker({
                map: map,
                position: point,
                label: icon.label
              });
    marker.addListener('click', function() {
                infoWindow.setContent(infowincontent);
                infoWindow.open(map, marker);


}

我已经调试了这部分并确保对象( idaddress )都是正确的。 问题是,当我单击任何标记时,事件侦听器似乎只附加到循环中的最后一个条目。 似乎可以使用 XML,为什么不能使用 Json 格式?

不得不使用let而不是var 感谢jaromanda-x

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM