>checkout this:- jsfiddle
$('body').remove('p')
我的问题是,当将选择器传递给 remove(( 函数时,remove(( 似乎不起作用,但是当我使用
$('body p').remove()
它工作正常。 所以,有什么问题,请帮忙
实际上<p>
是一个孩子<body>
所以使用children()
:-
$('body').children('p').remove()
$('body').children('p').remove();
// you can use find() also:- $('body').find('p').remove();
body {
outline: 1px solid purple;
}
svg {
outline: 1px solid purple;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body>
<p>
hi,there
</p>
</body>
同样的事情也发生在$('body p').remove()
.
为什么$('body').remove('p')
不起作用:-
正如@Jonathan洛诺夫斯基正确解释的那样:-
.remove(selector)
等效于使用 .filter(selector).remove()
。 使用<body>
筛选集合以仅<p>
元素会导致集合为空,因此.remove()
不起作用。
$('body').children('p').remove()
你可以尝试在你的身体里找到你的p元素
$('body').find('p').remove();
这样使用从正文中递归地删除所有"p"标签
$('body').find('p').remove()