我的 jQuery 脚本不按升序返回数字。
jQuery
$(document).ready(function() {
$.xpto = function(dom, speed) {
i = 0;
interval = setInterval(function() {
i++;
$(dom).append(i + '<br>');
}, speed);
};
$.xpto('#a', 1000);
$.xpto('#b', 2000);
});
还有我的 HTML:
<div id="a" style="background:blue;float:left;"></div>
<div id="b" style="background:red;float:left;"></div>
谢谢!
最佳答案
您在 i = 0
和 interval
之前缺少 var
关键字。这会导致函数 $.xpto
的所有实例共享这些变量。此外,每次调用 $.xpto
时,i
变量都会重置为零。
根据你的函数的逻辑,这应该发生:
a 1
b 2
a 3
a 4
a 5
b 6
a 7
a 8
b 9
...
如果这不符合预期,请提出您的愿望,我会查看。
关于javascript - jQuery 函数不适用于两个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7692981/