结合jquery fadeOut和scrollTop:没有完全淡化

时间:2012-08-09 16:52:18

标签: jquery fadeout scrolltop

我在全屏画廊的底部放了一个“向下滚动”按钮。 (全屏图库下方有内容。)

Here's a link到我的页面,以便您自己查看。

我的问题不是具体Galleria,但这就是我正在使用的问题。因此,我使用Galleria API创建了一个新元素,并将其附加到Galleria容器中。

然后我在这个元素上使用scollTop然后fadeOut(在向元素添加ID,更多类和一些HTML之后):

this.$('scrollnote').attr('id', 'scrollnotecontainer').html("<h6>Scroll down</h6>").addClass('hide-for-touch').click(function(){
    $('html, body').animate({
        scrollTop: $("#scrollnotecontainer").offset().top
    }, 900);        
    $(this).fadeOut();
});

问题:当您单击此“滚动到”div时,一切都按预期工作,但元素不会完全淡出。

我一删除:

$('html, body').animate({
        scrollTop: $("#scrollnotecontainer").offset().top
    }, 900);

离开图片(离开fadeOut),元素确实完全淡出。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

也许尝试这样做?滚动完成后会发生淡出,以防同时执行这两项操作导致问题:

this.$('scrollnote').attr('id', 'scrollnotecontainer').html("<h6>Scroll down</h6>").addClass('hide-for-touch').click(function(){
    $('html, body').animate({
        scrollTop: $("#scrollnotecontainer").offset().top,
        complete: function() { $(this).fadeOut(); }
    }, 900);        
});