gpt4 book ai didi

javascript - 如果jquery中的前一个元素为空,如何删除当前元素?

转载 作者:行者123 更新时间:2023-11-30 11:57:20 24 4
gpt4 key购买 nike

我想删除类为“tehnicneinfo”的元素,但前提是我正在检查的元素(类为“h2size”)没有子元素。我有一堆由插件生成的元素,我只想删除那些没有子元素的下一个元素。我写了 jquery 代码,但它删除了我所有的元素,而不仅仅是那些没有子元素的下一个元素。这是我的 jquery 代码:

$('.news .h2size > div').each(function() {
var ul = $(this).find('ul');
if(!ul.length) $(this).remove();
var h1 = $('.news').find('.tehnicneinfo');
var h2size = $('.news').find('.h2size');
if(h2size.prev().is(':empty'))
{
h1.remove();
}
});

这段代码在 $(document).ready(function() 里面。你能告诉我我做错了什么吗?这段代码还有其他用途,所以我有麻烦了仅来自 var h1 = $('.news').find('.tehnicneinfo'); 这一行。提前致谢!

HTML:

<div class="news">
<h1 class="tehnicneinfo">xxx</h1>
<div class="h2size">
<div id="xyxyxy">
.......
</div>
</div>
<h1 class="tehnicneinfo">yyy</h1>
<div class="h2size"></div>
....
</div>

这就是 html,只是有大约 20 行相同,但具有不同的值(不是 yyy 和 xxx)。我需要删除所有“yyy”(它们并非都具有相同的值)。

最佳答案

您可以使用 filter过滤你想删除的然后删除它们

“我只想删除那些没有子元素的下一个元素”

$('.tehnicneinfo').filter(function(){
return !$(this).next().children().length;
// only ones with next sibling with no children
}).remove();

JSFIDDLE

关于javascript - 如果jquery中的前一个元素为空,如何删除当前元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37568068/

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