2

我有一个名为的类.content,此内容有一个名为的属性.data-time,我想隐藏它具有功能.content类的所有元素setTimeout(),有人可以帮助我吗?

HTML 代码:

<div class="content first" data-time="200"> </div>
<div class="content second" data-time="300"> </div>
<div class="content third" data-time="400"> </div>
<div class="content fourth" data-time="500"> </div>;

jQuery代码:

    $(".content", this ).each(function(){
        var time = $(this).attr("data-time");
        setTimeout(function() {
            $(this).hide("slow");
        }, time);
    });

请帮我这样做。

4

2 回答 2

5

在您的setTimeout功能中,this是窗口。试试这个:

http://jsfiddle.net/uXVAs/

$(".content" ).each(function(){
        var $this = $(this);
        var time = $this.data("time");
        setTimeout(function() {            
            $this.hide("slow");
        }, time);
    });
于 2013-08-29T00:20:02.277 回答
1

或者,您可以使用 .delay() jquery 函数。

$('.content').each(function(){
    var time = $(this).attr("data-time")
    $(this).delay(time).hide("slow")
});     

这里的例子。

于 2013-08-29T00:24:21.213 回答