肿么又被循环难住了呢? 本帖最后由 dancingyomin 于 2013-04-08 16:25:35 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 mapObj.bind(ers[i],"click",(function(_i){ return function(e){infoWindows[_i].open(mapObj,e.lnglat)} })(i)); 这是jqurey写法么?是不是需要引用jqurey文件的? 这个就是传说中的回调函数么?刚才直接复制试验了下,还不成功。现在点击后不显示任何info注释另外不是很理解~我分解了一下这个文件fn = function(e){infoWindows[_i].open(mapObj,e.lnglat);}mapObj.bind(ers[i],"click",(function(_i){return fn;})(i));这样对么? 这不是什么JQUERY写法。就是个闭包啦。。2L是正解。说白点就是编译期跟运行期的区别,你可以分析一下你的代码,逻辑上看起来是没问题的,每个绑定一个对应的i,但是真正到了运行期,函数还是去取i的值,这个时候i已经是最后那个值了,所以就形成了这样的情况用立即执行的函数(function(_i){return function(e){infoWindows[_i].open(mapObj,e.lnglat)}})(i)执行以下的话,return的是一个新函数,这个函数里的_i就是每次的i,这样每次绑定的函数都是对应的i。 求助!Extjs3.3 Grid中如何让可编辑的单元格默认视觉效果为可编辑的?有图! javascript调用自动化组件时总会出现提示 如何消除 cname1 和 cemail1 总是是undifend,不知道为什么? getElementsByTagName 困惑 Ext.ux.FusionPanel 值传递问题 请问在.net中,怎样调用js来验证textbox是否有值,并且是信箱 鼠表怎么总停留在运行状态? jquery 添加A标记添加样式 如何最大化显示一个嵌在table里边的iframe [求助]一个jplayer的问题 求大神帮忙 动态设置背景图片问题
return function(e){infoWindows[_i].open(mapObj,e.lnglat)}
})(i));
mapObj.bind(ers[i],"click",(function(_i){return fn;})(i));这样对么?
return function(e){infoWindows[_i].open(mapObj,e.lnglat)}
})(i)执行以下的话,return的是一个新函数,这个函数里的_i就是每次的i,这样每次绑定的函数都是对应的i。