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

解决方案 »

  1.   

    function bibao(i){                 deleteStorage(i);}不用return了,你的这个和闭包没关系,是参数没有传递对,return的话就没有执行deleteStorage这个方法了
      

  2.   

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

  3.   

    以上两种方法都没有反应。如果加上一个 _i= this.i; 不用闭包程式运行成功但是所有i都等于末尾数值。
      

  4.   

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

  5.   

    谢谢!看了半天终于想起来要独立动态i这么回事。 直接deleteStorage("+i+") 就Ok了