Don't make functions within a loop

来源:4-1 JS多物体动画

慕粉3218393

2016-12-26 22:43

Don't make functions within a loop这种问题该怎么解决http://img.mukewang.com/58612c9f00013f4108300747.jpg

写回答 关注

1回答

  • 雷灿成
    2016-12-28 11:12:53

    // for (i = 0; i < length; i++) { 
                pics.onclick = fs(i); 
        } 
        function fs(i) { 
            return function() { 
                alert(i); 
            }; 
        } 

    这个错误就是为了防止函数与循环之间作用域与自变量的问题,其中的细节就不多说了.接下来就自己学会变通了,函数是不能在一个循环内的,不过写了,不影响内容的结果

    window.onload = function() {

    var bad = document.getElementsByTagName("div");

    for(var i=0;i<bad.length;i++){

    bad.onmouseover=fs(i);

    }

    function fs(i){

    startMove(this,100);

    }

    }


JS动画效果

通过本课程JS动画的学习,从简单动画开始,逐步深入各种动画框架封装

113920 学习 · 1502 问题

查看课程

相似问题