这可能是一个愚蠢的问题,但由于我是新手,我想问你这是否是正确的代码:
$(document).ready(function() {
$(".note-float").each(function(index) {
$(this).addClass("note-float-view");
}, index * 500);
});
因为我总是收到错误陈述index is not defined
。我到底错过了什么? .note-float
类可用,永远不会被隐藏。
答案 0 :(得分:2)
您在匿名函数(回调)之外使用index
,因此当您使用它时它超出了范围。
您编写它的方式,index * 500
被用作.each
的第二个参数,并且不接受第二个参数(不是您正在使用的方法)。< / p>
修改:要以不同的速度将新类添加到元素(将index
加入帐户,您可以使用settimeout
:
$(document).ready(function() {
$(".note-float").each(function(index) {
// save a reference to this element so we can use it in the timeout
var el = $(this);
setTimeout(function () {
el.addClass("note-float-view")
}, index * 1000);
});
});
&#13;
.note-float-view, .note-float {
background: red;
width: 100px;
height: 100px;
display: inline-block;
margin: 0 5px;
}
.note-float-view {
background: green;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="note-float"></div>
<div class="note-float"></div>
<div class="note-float"></div>
<div class="note-float"></div>
&#13;