jquery删除直接子元素

Pra*_*ant 19 jquery

使用jQuery,如何删除我的html主体中的锚标签,该标签也包含一个包装器div,这个包装器div位于我要删除的锚标签之上.

它像是

<body>
    <div id="wrapper"> 
        <a id="not_me" href="#">hi</a>
    </div> 

    <a id="remove_me" href="#">Remove Me</a>

</body>
Run Code Online (Sandbox Code Playgroud)

如果我使用

$("body").find("a:first-child").remove();
Run Code Online (Sandbox Code Playgroud)

它删除了我的包装器div中的第一个锚标签,即一个id为"not_me"的锚标签,而我希望删除"remove_me".

use*_*716 39

$("body").children("a:first").remove();
Run Code Online (Sandbox Code Playgroud)

你使用children()(docs),因为你只想要直接的孩子body.

然后"a:first"用作选择器来定位第一个<a>元素.

这是因为与first-child-selector(文档)你只会得到<a> ,如果它是其父的第一个孩子(它不是).但是对于first-selector(docs),你会得到第一个<a>匹配的东西.

另一种方法是将它全部放在一个选择器中:

$('body > a:first').remove();
Run Code Online (Sandbox Code Playgroud)

与上面相同,但使用> child-selector(docs)而不是children()(docs)方法.


mVC*_*Chr 9

您只想使用children()搜索直接子项,您可以使用:firsteq(0)删除第一个:

$("body").children("a").eq(0).remove();
Run Code Online (Sandbox Code Playgroud)


pso*_*res 6

你为什么不试试:

$("#remove_me").remove()
Run Code Online (Sandbox Code Playgroud)

不知道是不是错,我还在学习:P