首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

for循环中的闭包函数使用有关问题

2012-09-28 
for循环中的闭包函数使用问题headscript languagejavascriptwindow.onloadfunction(){var objdoc

for循环中的闭包函数使用问题
<head>
<script language="javascript">
window.onload=function(){ 
  var obj=document.getElementById("mai");
  var items=["click","keypress"];
  for(var i=0;i<items.length;i++){
  (function(){
  var item=items[i];
obj["on"+item]=function(){
alert("thanks for your"+item);
 
};
  })();
 } };
</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<p id="mai">风雨走过</p>
</body>
</html>


这儿的闭包函数中为什么items[i]中i总是为2???还有闭包函数(function(){})()
最右边的的括号一般填写的是什么数据???

[解决办法]

JScript code
    for(var i=0;i<3;i++){        (function(x){            return function(){                alert(x);            }        })(i);        //就是把外面的i变量传给x在闭包内使用    } 

热点排行