使用jQuery实现平滑的动画效果

时间:2010-01-12 00:05:40

标签: jquery toggle jquery-animate smooth

我在页面上设置了一些jQuery,以便在用户点击链接时更换一些DIV。 DIV在其中有闪光对象,段落和图像,当我点击链接将其交换掉时,效果并不完全......平滑。

这是我的代码:

$('#div').toggle('fast');
$('#anotherdiv').toggle('fast');

它有点卡在flash对象上一会儿然后完全消失。有没有人知道一个插件在jQuery中制作非常流畅的动画效果?我看了一下jQuery用户界面,但对我想要的东西来说似乎有些过分。

干杯。 :)

4 个答案:

答案 0 :(得分:2)

这里的速度问题主要是闪存...你要求浏览器快速重新制作视频,而不是浏览器那么棒的东西。我会考虑在隐藏之前隐藏flash元素,并在休息之后显示它们,如下所示:

$(function(){
  $('#hideShowButton').toggle(function() {
    $('#div object, #anotherdiv object').hide();
    $('#div').toggle('fast');
    $('#anotherdiv').toggle('fast');
  }, function() {
    $('#div object, #anotherdiv object').show();
    $('#div').toggle('fast');
    $('#anotherdiv').toggle('fast');
  });
});

答案 1 :(得分:0)

Javascript动画实际上取决于浏览器。 IE在javascript上非常慢,而且很多时候甚至不值得尝试使用IE进行动画制作。 Firefox和Chrome要好得多。尝试使用chrome并查看它是否仍有问题。

答案 2 :(得分:0)

@stimms对速度是对的,但总有一种解决方法:)

在开始动画之前我会隐藏flash容器。这样就不会妨碍事情的发展。

答案 3 :(得分:0)

确保Flash的对象和/或嵌入标记的wmode设置为transparentopaque ...

值得一试:)