1

所以我在图像翻转中添加了一些过渡:

$(document).ready(function(){
    $('.project').hover(function(){
        $(this).children('.description').stop().slideDown('fast');
    }, function(){
        $(this).children('.description').stop().slideUp('fast');
    });
});

然而,有时描述框只向下滑动一半,甚至只是它应该滑动的长度的十分之一......描述框是 300 x 300px,应该滑入一个 300x300px 的盒子......

如果我很快将鼠标悬停在 .project 上,这似乎会发生,stop() 是否可以将自身添加到队列中,从而在不应该的时候停止事情?

4

2 回答 2

0

stop( true, true )如果您希望动画立即完成,或者stop( true, false )您不想完成动画,请尝试将其反转。第一个 true 将清除队列,以便动画可以重新开始。我不完全确定为什么会出错,我很抱歉无法给出更完整的答案,但现在我无法查找它。你可以在这里阅读更多关于它的信息:http: //api.jquery.com/stop/,我发现 jQuery API 通常非常有用。

于 2012-05-26T17:09:56.047 回答
0

我在 jsfiddle http://jsfiddle.net/gizmovation/TpqvT/上创建了一个示例

通过快速将鼠标移入和移出项目容器,我可以让描述框出现在中途。

发生这种情况是因为stop()正在停止上一个动画,然后您正在开始一个新动画。如另一个答案中所述通过stop(true, true)将使事情看起来更好一些。

您是否在动画完全挂起时遇到问题?如果是这样,请修改我创建的 jsfiddle 以更好地说明问题,我们可以提供进一步的帮助。

于 2012-05-26T17:19:05.183 回答