慕粉3218393
2016-12-26 22:43
Don't make functions within a loop这种问题该怎么解决
// 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动画效果
113920 学习 · 1502 问题
相似问题