我有一个jquery,它在同一类的几个div中消失,有点像新闻提要。例如,使用此代码延迟<div class="dashboard_notification">
一次又一次地消失:
<script>
$('.dashboard_notification').hide(); // this or use css to hide the div
$(document).ready(function(){
var time = 1000;
$('.dashboard_notification').each(function() {
$(this).delay(time).fadeIn(1000);
time += 1000;
});
});
</script>
现在我要做的是隔离其中的每一个(pref而不必将div类更改为类似"dashboard_notification1/2/3/4"
),以便用户可以单击将每个新闻源分别关闭到其他人使用我已分配"dashboard_notification_close"
有人可以告诉我我是如何做到这一点的,谢谢,这是我现在用来关闭div的代码,但这只是关闭了所有新闻源,因为它们共享相同的div class =“dashboard_notification”
<script>
$('.dashboard_notification_close').click(function(e) { //button click class name is myDiv
e.stopPropagation();
})
$(function(){
$('.dashboard_notification_close').click(function(){
$('.dashboard_notification').delay(100).fadeOut(500);
});
});
</script>
答案 0 :(得分:2)
假设标记看起来像这样:
<div class="dashboard_notification">
...
<div class="dashboard_notification_close"></div>
...
</div>
您可以使用this
引用点击的按钮,使用closest
来查看其外部div
:
$('.dashboard_notification_close').click(function(){
$(this).closest('.dashboard_notification').delay(100).fadeOut(500);
});
答案 1 :(得分:0)
在点击功能中,将$('.dashboard_notification')
切换为$(this)
,它只会触发点击的元素,而不是所有与选择器查询匹配的元素。