使用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)方法.
您只想使用children()搜索直接子项,您可以使用:first或eq(0)删除第一个:
$("body").children("a").eq(0).remove();
Run Code Online (Sandbox Code Playgroud)