假设一个 html 文档:
<html>
<head>
</head>
<body>
<li id="eee">
<li>aaa</li>
<span>bbb</span>
...
<div>
<button id="ccc">ddd</button>
</div>
...
</li>
</body>
</html>
使用$('#ccc').closest('li')
jQuery 将选择 <li id="eee">...</li>
- <button id="ccc">
的最近祖先。是否可以选择<li>aaa</li>
作为“真正”最接近<li>
元素到<button id="ccc">
(因此,它不必是祖先,但只要是其中一个祖先的 sibling 就足够了)?
更新:
有效的html(特别是@PSL家伙,已经删除了他的评论):
<html>
<head>
</head>
<body>
<div id="eee">
<div>aaa</div>
<span>bbb</span>
<ul>
<li>fff</li>
<li>
<button id="ccc">ddd</button>
</li>
</ul>
</li>
</body>
</html>
如何获取<div>aaa</div>
不使用parent()
功能,但使用某种东西。喜欢 trueClosest('div')
考虑 sibling 、祖先和祖先的 sibling 吗?
我只是想知道,jQuery有没有这样的功能?
最佳答案
可以使用以下内容:
$('#startingElement').closest(':has(#desiredElement)').children('#desiredElement')
因此:找到距离 #startingElement
最接近且具有 #desiredElement
的元素,然后通过 children(function) 获取它(它们);
关于jquery - 如何使用 jQuery 选择最接近的元素(不能是其父元素)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16869001/