读书人

初学者问javascript基础有关问题

发布时间: 2012-09-11 10:49:03 作者: rapoo

菜鸟问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) );} 

读书人网 >JavaScript

热点推荐