为什么jQuery的.preventDefault会遮挡我的动画?

时间:2011-04-20 19:36:26

标签: jquery jquery-animate preventdefault

我有一个控制一些动画的锚标签,href设置为javascript:void();暂时,一切都很好。我将href更改为#并放入event.preventDefault();在附加到锚标记的函数内部。它阻止浏览器进入#,,但现在我的动画没有发生,只是一秒后它显示了动画的结束点。我尝试将动画的持续时间延长一秒,然后我看到动画的结束,所以就像preventDefault导致第一部分的打嗝一样。

知道这里发生了什么吗?这是我的代码:

$('#galleryBelt .scrollRight a').click(function(event){
    slidepageCurr++;
    setScrollButtons();

    /* slide belt to the left */
    $('#galleryBelt ul').animate({
        left: '-='+slidepageWidth
    }, shiftDuration);

    event.preventDefault();
});

1 个答案:

答案 0 :(得分:0)

返回false是否有助于这种情况?

$('#galleryBelt .scrollRight a').click(function(event){
    slidepageCurr++;
    setScrollButtons();

    /* slide belt to the left */
    $('#galleryBelt ul').animate({
        left: '-='+slidepageWidth
    }, shiftDuration);

    return false;
});