【发布时间】:2011-07-11 10:46:17
【问题描述】:
我创建了一堆标记和信息框,我想通过侦听器将它们链接在一起,尽管侦听器似乎在没有任何点击的情况下在开始时触发,并且如果我尝试通过点击标记来触发侦听器(之后关闭盒子)什么都没有发生。
//Load Markers
function LoadData() {
//Space Reservation
var site_arr = new Array();
var point_arr = new Array();
var pasta_arr = new Array();
//Load All Information
point_arr = [new google.maps.LatLng(38.629343,-9.191592),
new google.maps.LatLng(38.649187,-9.189205)];
site_arr = ["AAA","BBB"];
pasta_arr = [1,2];
//Create Markers and Set InfoBoxes
for(var i = 0 ; i < site_arr.length ; i++){
marker_arr[i] = new google.maps.Marker({
position: point_arr[i]
,map: map
,title: site_arr[i]
});
window_arr[i] = new InfoBox({
content: site_arr[i]
});
google.maps.event.addListener(marker_arr[i], 'click', function(i){
window_arr[i].open(map,marker_arr[i]);
}(i));
}
return 0;
}
有人知道发生了什么吗?
解决了这个问题,我只是发布它,因为它可能对其他人有用...... 谢谢大家!
//加载标记 函数加载数据(){ //空间预留 var site_arr = 新数组(); var point_arr = new Array(); var pasta_arr = new Array(); //加载所有信息 point_arr = [新 google.maps.LatLng(38.629343,-9.191592), 新的 google.maps.LatLng(38.649187,-9.189205)];
site_arr = ["AAA",
"BBB"];
pasta_arr = [1,2];
//Create Markers and Set InfoBoxes
for(i = 0 ; i < site_arr.length ; i++){
marker_arr[i] = new google.maps.Marker({
position: point_arr[i]
,map: map
,title: site_arr[i]
,icon: "http://labs.google.com/ridefinder/images/mm_20_red.png"
});
marker_arr[i]._info = new InfoBox({
content: pasta_arr[i];
});
attachListener(marker_arr[i]);
}
return 0;
}
函数附加监听器(标记){ google.maps.event.addListener(标记,“点击”,函数(){ 标记._info.open(地图,标记); }); 返回0; }
【问题讨论】:
标签: google-maps-api-3 listener