gpt4 book ai didi

jquery - fadeOut 不会删除元素

转载 作者:行者123 更新时间:2023-12-01 06:35:04 25 4
gpt4 key购买 nike

我有三个李:

<li id="234-sg-235"><div><a></a></li>
<li><div><a></a></li>
<li>
<div>
<a>Don't show again</a>
</div>
</li>

看起来是这样的: enter image description here

当用户按下不再显示时,我想在 3 秒后删除这些 li-s。

所以我只需要删除它们的代码。

我尝试了三件事:

1)

$(this).parent('div').parent('li').fadeOut(3000);
$(this).parent('div').parent('li').prev().fadeOut(3000);
$(this).parent('div').parent('li').prev().prev().fadeOut(3000);

2)

var notificationId = $(this).parent('div').parent('li').prev().prev().attr("id");
$(this).parent('div').parent('li').fadeOut(3000);
$("#" + notificationId).next().fadeOut(3000);
$("#" + notificationId).fadeOut(3000);

3)

$(this).parent('div').parent('li').fadeOut(3000, function () {
$(this).parent('div').parent('li').remove();
});

$(this).parent('div').parent('li').prev().fadeOut(3000, function () {
$(this).parent('div').parent('li').prev().remove();
});

$(this).parent('div').parent('li').prev().prev().fadeOut(3000, function () {
$(this).parent('div').parent('li').prev().prev().remove();
});

但结果是(第一个li被删除,其他的得到:display:none):

<li style="display: none"><div><a></a></li>
<li style="display: none">
<div>
<a>Don't show again</a>
</div>
</li>

为什么这些li-s没有被删除?为什么只删除第一个li?

感谢任何帮助!

最佳答案

应该是

$('ul a').click(function(){
$(this).closest('li').prevAll(':lt(2)').addBack().fadeOut(3000, function () {
$(this).remove()
});
})

演示:Fiddle

关于jquery - fadeOut 不会删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18353099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com