我有一个名为.content
的类,此内容有一个名为.data-time
的属性,我想要隐藏所有具有.content
类setTimeout()
类的元素,任何人可以帮帮我吗?
HTML code:
<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);
});
请帮我这样做。
答案 0 :(得分:5)
在setTimeout
函数中,this
是窗口。试试这个:
$(".content" ).each(function(){
var $this = $(this);
var time = $this.data("time");
setTimeout(function() {
$this.hide("slow");
}, time);
});
答案 1 :(得分:1)
或者,您可以使用.delay()jquery函数。
$('.content').each(function(){
var time = $(this).attr("data-time")
$(this).delay(time).hide("slow")
});