JavaScript remove(selector) 不起作用



>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()

最新更新