2012-12-15 94 views
1

我有一个基本图像,它覆盖了一旦用户访问该网站后淡入的主容器。我希望在初始加载时发生此事件只有。这可以完成吗?如何让jQuery事件触发一次

这里的.js文件

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#landing').animate({opacity: 0.01}, 5000, function() { 
      $(this).hide(); 
      $('#main').children().fadeIn(5000); 
     }); 
    }); 
</script> 

提前感谢!

+0

发生了什么事,使再次事件火..?你可以使用['one()'](http://api.jquery.com/one/),但是我不相信这是你发布的代码所必需的。 –

+0

任何时候当您再次访问该页面时,#landing会淡入(这只是一个全屏图像)。 – Ben

+1

@本:-1为着陆页图像。 ;-)(不是真的,只是在理论上。) –

回答

4

您可以设置一个cookie,然后只在未设置cookie的情况下运行动画。

如果你想使用jQuery那么我的建议是使用此jQuery插件: https://github.com/carhartl/jquery-cookie

而且这样做:

if (!$.cookie('intro_animation')) { 
    $.cookie('intro_animation', 'true'); 

    // Do your animation 
    $('#landing').animate({opacity: 0.01}, 5000, function() { 
     $(this).hide(); 
     $('#main').children().fadeIn(5000); 
    }); 
} 
+0

我会如何去做我目前的脚本? (我是jQuery的新手) – Ben

+0

@Ben我更新了答案以提供具体细节。本地存储绝对也是一种选择。 – Dan

+0

哎呀谢谢@ T.J.Crowder! – Dan