如何使用 jQuery 获取特定类的 ID?
我有一些类名为 hover
的 div 元素,这些 div 元素的父 div 具有类名 hoverparent
但这些父元素的 id 不同。
将鼠标悬停在 .hover
div 元素上时是否可以获取相应 .hoverparent
元素的 ID?
我试图通过以下方式得到这个:
$('.hoverparent').attr('id')
但它每次都给出相同的第一个父 ID。
结构如下:
<div class="hoverparent" id="hover-1">
<div class="hover">ABC</div>
</div>
<div class="hoverparent" id="hover-2">
<div class="hover">DEF</div>
</div>
I have some div elements having class name hover
, these div elements have parent divs having class name hoverparent
but the id's of these parent elements are different.
Is it possible to get the ID of respective .hoverparent
element while hovering on my .hover
div elements?
I tried to get this by:
$('.hoverparent').attr('id')
But it gives the same first parent id every time.
Structure is like:
<div class="hoverparent" id="hover-1">
<div class="hover">ABC</div>
</div>
<div class="hoverparent" id="hover-2">
<div class="hover">DEF</div>
</div>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
您需要使用
parent
或closest
函数遍历 DOM 树以查找您要查找的“父”元素:
父级
和最接近的
是第一个仅当.hoverparent
元素是.hover
元素的直接父级时才起作用;closest
将向上搜索所有祖先来找到它。You need to use the
parent
orclosest
functions to traverse up the DOM tree to find the "parent" element you are looking for:The difference between
parent
andclosest
is that the first will only work if the.hoverparent
element is the immediate parent of the.hover
element;closest
will search upwards through all ancestors to find it.在悬停回调中尝试 $(this).parent().attr('id') 。
try $(this).parent().attr('id') , in your hover callback.
不要称你的班级为悬停。这应该有效
don't call your class hover. this should work
像这样添加每个循环:
Add each loop like this :
在悬停事件的处理程序中使用父方法:
Use the parent method in the handler for the hover event:
您可以尝试 parent() 方法。
像这样:
You can try the parent() method.
Like this:
请尝试以下操作:
Try the following:
这是小提琴http://jsfiddle.net/9dJJ9/1/show/
here is the fiddle http://jsfiddle.net/9dJJ9/1/show/