Jquery。每个延迟问题

时间:2016-02-09 08:44:13

标签: javascript jquery html each delay

我正在尝试用JavaScript做一些事情并尝试一些问题。

这是我的Html代码:

<div class="views-row"></div>
<div class="views-row"></div>
<div class="views-row"></div>
<div class="views-row"></div>

在JavaScript中,我尝试向每个div添加一个类,但是我无法执行此操作。这是我的JS

$('.views-row').each(function(){
            $(this).addClass("test").delay(1000);
});

我不知道什么是错的,有谁知道?

感谢您的帮助;)

2 个答案:

答案 0 :(得分:2)

jQuery的delay()主要用于动画,请改用<{1}}

setTimeout

FIDDLE

答案 1 :(得分:1)

setTimeoutindex .each参数一起使用。 .bind()会将this值传递给目标函数。

试试这个:

&#13;
&#13;
$('.views-row').each(function(index) {
  setTimeout(function() {
    $(this).addClass("test");
  }.bind(this), index * 1000);
});
&#13;
.test {
  background: green;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div class="views-row">Test</div>
<div class="views-row">Test</div>
<div class="views-row">Test</div>
<div class="views-row">Test</div>
&#13;
&#13;
&#13;

Fiddle here