Jquery 基于父div的尺寸定位图像覆盖

Jquery 基于父div的尺寸定位图像覆盖,jquery,hover,jquery-animate,overlay,dimensions,Jquery,Hover,Jquery Animate,Overlay,Dimensions,我有一个动画图像叠加,我正试图根据叠加父div的高度定位该叠加。父div的尺寸是动态创建的 我当前使用的代码: jQuery('.parentdiv').hover(function(){ jQuery(".overlaydiv", this).stop().animate({"opacity": "0.95", top:'0px'},{queue:false,duration:500}); }, function() { jQuery(".overlaydiv", this).stop().a

我有一个动画图像叠加,我正试图根据叠加父div的高度定位该叠加。父div的尺寸是动态创建的

我当前使用的代码:

jQuery('.parentdiv').hover(function(){
jQuery(".overlaydiv", this).stop().animate({"opacity": "0.95", top:'0px'},{queue:false,duration:500});
}, function() {
jQuery(".overlaydiv", this).stop().animate({"opacity": "0.95", top: '185px'},{queue:false,duration:500});
});
我想知道的是如何计算外部div的高度,然后将其应用到现有代码中。具体来说,我需要将185px替换为当时的父divs高度。非常感谢您的帮助。

在JQuery()中尝试
outerHeight()

编辑:但是,如果要将子对象垂直放置在父对象之后,请尝试:

top: $(this).outerHeight(true) + $(this).position().top

$(this).outerHeight(true)
应该为您提供父div的高度,但这只会在您设置
top:$(this)时将覆盖div放置在该位置。outerHeight(true)
就是您想要的吗?似乎无法实现这一点。用您的代码替换了185px,但我的jQuery不是最好的。我应该添加其他内容吗?叠加功能是一种向上/向下滑动的效果,因此需要在代码的第二行上指定一个高度,以便在鼠标落下时将自身再次向下推。这可能不会给他提供所需的效果。看到我上面的评论啊,是的,我想他可能混淆了他的意思,现在你提到了,上面的代码会给他父母的身高,但他可能想将其添加到
$(this).position().top
我会编辑以包括在内。谢谢你的建议,但我似乎无法在现有代码中使用它。如果我用代码替换185px,它会向上滑动,但不会在鼠标落下时滑回。你确定不需要同时反转0和其他值吗?如果你想把它滑到悬停位置,然后回到鼠标上,这就是你需要做的?
top: $(this).outerHeight(true) + $(this).position().top