這是我的代碼,SetOpacity被調用錯誤的值,爲什麼?setTimeout和匿名函數問題
function SetOpacity(eID, opacity){
eID.style.opacity = opacity/100;
eID.style.filter = 'alpha(opacity=' + opacity + ')';
}
function fade(eID, startOpacity, endOpacity){
var timer = 0;
if (startOpacity < endOpacity) {
for (var i = startOpacity; i <= endOpacity; i++) {
setTimeout(function() {SetOpacity(eID, i);}, timer * 30);
timer++;
}
}
}
+1 - 我也開始使用匿名函數。再次看,我想你的更優雅。 – Kobi
你能解釋一下(i)的事嗎? – ronik
@ronik我更新了我的答案 – MBO