0

本质上,我有一个包含大量内容且具有绝对定位的容器。我有一个高度切换,可以增加一个的高度mouseenter,然后恢复正常mouseleave。这是jQuery:

function newHeightSlide(sel1,sel2){
    $(sel1).mouseenter(function(){
        $(sel2,this).animate({
            height: 'toggle'
        },'normal');
    });
    $(sel1).mouseleave(function(){
        $(sel2,this).animate({
            height: 'toggle'
        },'normal');
    });
}

问题是由于高度随绝对定位的变化,元素可以重叠

我正在使用Jquery Masonry来创建绝对定位。所以我尝试在.animate 的完成部分添加一个回调函数,但这只会在动画完成后执行该函数

我需要在动画期间调用此函数,以便当高度增加到一个元素时,它下面的元素会向下移动,即使它们具有绝对定位

我已经有了我需要的功能。我只需要能够调用它,以便它与切换动画一致,以便它运行多次并创建一个动画效果,与height:"toggle"

额外信息

如果它很重要,这里是回调函数:

$('#posts').masonry({
    itemSelector: '.post, .post_photo',
    isAnimated: false
});

注意: isAnimated 设置为 false 是因为当它为 true 时,虽然它会缓和过渡,但它会导致其他功能在配置时移动并且看起来非常混乱。如果我可以让这个函数在toggle高度运行时运行,这应该没有什么不同,这样它看起来无论如何都会缓和,因为如果我只是为高度设置动画,它会缓和它的方式

4

0 回答 0