Javascript 如何将$(this)与jquery一起使用来更改div父级上的元素?
我试图用JQuery做一件简单的事情,但我很难理解我应该做什么 我想做的是当Javascript 如何将$(this)与jquery一起使用来更改div父级上的元素?,javascript,jquery,html,Javascript,Jquery,Html,我试图用JQuery做一件简单的事情,但我很难理解我应该做什么 我想做的是当.overlay detail悬停在$(this).closest('p img:first child').css('display','none')其他('display','block') (请参阅html以了解) 我做错了什么?问题是因为最近的()查找父元素,而p是兄弟元素。使用prev()获取p,然后使用find()获取子img: $("#block-views-quipe-block .overlay-det
.overlay detail
悬停在$(this).closest('p img:first child').css('display','none')
其他('display','block')
(请参阅html以了解)
我做错了什么?问题是因为
最近的()
查找父元素,而p
是兄弟元素。使用prev()
获取p
,然后使用find()
获取子img
:
$("#block-views-quipe-block .overlay-detail").hover(function(){
$(this).prev('p').find('img:first-child').hide();
}, function(){
$(this).prev('p').find('img:nth-child(2)').show();
});
问题是因为
closest()
查找父元素,而p
是同级元素。使用prev()
获取p
,然后使用find()
获取子img
:
$("#block-views-quipe-block .overlay-detail").hover(function(){
$(this).prev('p').find('img:first-child').hide();
}, function(){
$(this).prev('p').find('img:nth-child(2)').show();
});
最近的()只搜索祖先并一直向上搜索,直到找到匹配项,所以请尝试使用parent()。查找()此处最近的()只搜索祖先并一直向上搜索,直到找到匹配项,所以请尝试在此处使用parent()。查找()
$("#block-views-quipe-block .overlay-detail").hover(function(){
$(this).prev('p').find('img:first-child').hide();
}, function(){
$(this).prev('p').find('img:nth-child(2)').show();
});