日期:2014-05-16  浏览次数:20340 次

这个闭包怎么写?

function bibao(i){
         return function(e){
                 deleteStorage(i);}
        }


for(var i=0;i<freshdreamdata.length;i++){        
                 document.write("<li><a href='javascript:location.reload()' onmousedown='bibao(i)'>" + freshdreamdata[i] + "</a></li>");}
}


貌似闭包写的方法不对,一直不显示deletestorage效果

------解决方案--------------------
document.write("<li><a href='javascript:location.reload()' onmousedown='bibao("+i+")'>" + freshdreamdata[i] + "</a></li>");
------解决方案--------------------
function bibao(i){

                 deleteStorage(i);

}


不用return了,你的这个和闭包没关系,是参数没有传递对,return的话就没有执行deleteStorage这个方法了