我想让一个 jquery 动画在每个会话中只运行一次 cookie。我已经想出了如何使用 Klaus Hartl 的 cookie 插件来做到这一点,但是,当页面被第二次调用时,元素会闪烁。我的印象是 $.fx.off 应该让 jquery 跳转到动画的结束状态,但是,元素短暂闪烁,就像不是只是跳转到结束状态,它只是通过动画播放真的很快。当浏览器退出时,cookie 会退出,然后动画会再次播放——这就是我想要发生的事情。我只希望动画在每个会话中播放一次。我可以在网上找到一些关于如何使 cookie 切换 CSS 状态的好教程,但我想要一些可以简单地阻止 jquery 动画运行以便最终状态可见的东西。
这是我的测试页面:
http://ianmartinphotography.com/test-site/index-cookies-04.html
这是我的代码:
<script type="text/javascript">
var welcome=$.cookie('welcome'); if(welcome == 'ran') {$.fx.off = !$.fx.off;};
</script>
<!--slider-->
<script type="text/javascript">
$(window).load(function(){$(".imwpj")
.animate({"top": "+=200px"}, 0)
.fadeIn(2000).delay(200).animate({"top": "+=295px"}, 1100, function() {
$('#sub-fader').fadeIn(1500); });
$.cookie('welcome', 'ran');
});
</script>
任何想法都会很棒!谢谢!