当前位置: 代码迷 >> JavaScript >> 初学者问javascript基础有关问题
  详细解决方案

初学者问javascript基础有关问题

热度:317   发布时间:2012-09-11 10:49:03.0
菜鸟问javascript基础问题
JScript code

for(var len=0;len<200;len++){

google.maps.event.addListener(markerList[len].marker, 'click', function(){
                markerList[len].infoWindow.open(map,this);
            });

}



我希望得到的效果是点击0号marker那么弹出0号infoWindow,点击1号就弹出对应1号的infoWindow... 但问题是这样的代码最后的结果是0~199号marker被点击后就是返回第199号infoWindow,请问我该如何处理这个问题?

------解决方案--------------------
JScript code
function createpack(len){
return function(){ markerList[len].infoWindow.open(map,this);}
}

//做闭包

for(var len=0;len<200;len++){

google.maps.event.addListener(markerList[len].marker, 'click',createpack(len) );

} 
  相关解决方案