是否有可能使jQuery仅为悬停动画的目标div,如果它是正在悬停的元素的子元素?

时间:2013-11-27 19:14:33

标签: javascript jquery css animation

好的,我是Javascript和jQuery的初学者,所以这可能是一个非常简单的问题,但我已经尝试过研究它,并且找不到任何好的答案。

在我的网站上:

http://joeyellisdesign.com/testingspace/JE2

我在我的投资组合的“工作”部分进行了翻转,我试图只在您将鼠标悬停在单个图像上时显示。

要设置动画,我有以下代码:

jQuery
$(document).ready(function(){
$(".project").hover(function(){
$(".projectdescription").animate({top:'4px'});
},function(){
$(".projectdescription").animate({top:'183.77px'});
});
});

此外,还有CSS和HTML。

<div class="project">
<a class="workanchor" href="#">
<img src="files/workthumbs/finsons.jpg">
<div class="projectdescription">
<h4>FINSON'S BEARD PRODUCTS</h4>
<p>Packaging and Identity</p>
<img class="plus" src="files/plus.png" width="129" height="129">
</div>
</a>
</div>


.project {
width: 295px;
height: 240px;
margin: 0px 1.25% 7%;
padding: 0px;
float: left;
overflow: hidden;
position: relative;
} 
#workcontainer .project .projectdescription {
background: #FFF;
margin: -4px 0px 0px;
padding: 0px;
width: 100%;
height: 240px;
position: absolute;
top: 183.77px;
} 
#work #workwrapper #workcontainer .project .workanchor .projectdescription .plus {
margin: 30px 0px 0px 83px;
padding: 0px;
height: 129px;
width: 129px;

}

提前感谢您对我一无所知的任何和所有帮助/和/或信息。 ;)

2 个答案:

答案 0 :(得分:3)

尝试:

$(".project").hover(function(){
    $(this).find(".projectdescription").animate({top:'4px'});
},function(){
    $(this).find(".projectdescription").animate({top:'183.77px'});
});

答案 1 :(得分:2)

$(".project").on('mouseenter mouseleave', function(e){
     $(".projectdescription", this).animate({top: e.type=='mouseenter' ? '4px' : '183.77px'});
});

FIDDLE