在我的网站中,我有一个欢迎动画(使用 jquery 创建),当任何人打开我的网站(www.mysite.com)时它就会运行。然后同一用户转到我网站中的另一个页面,例如www.mysite.com/about,然后单击返回主页 ( www.mysite.com ),动画再次显示。我该如何限制这个?
分享一些逻辑,例如放置会话或 settimeout 或类似的东西。
您可以在服务器端或客户端设置 cookie 并检查是否设置了 cookie 如果设置了 cookie 然后不显示欢迎框,否则显示欢迎框...
在 php 中,您可以使用 setcookie 函数设置会话 cookie,请参见以下链接:-
http://php.net/manual/en/function.setcookie.php
有关如何使用 JQuery 设置 cookie 的信息,请参阅以下链接: 如何使用 jQuery 设置/取消设置 cookie?
每次加载主页时,您都可以使用 if 语句检查 cookie 是否设置。如果未设置 cookie,则运行动画。
在动画脚本中;确保您设置了 cookie,以便在 cookie 处于活动状态时脚本不会再次运行。
这就是使用jquery cookie 插件的方法:
http://jsfiddle.net/lollero/2nYBV/(或http://jsfiddle.net/lollero/2nYBV/show/)
您可能想要更改 cookie 的过期方式。该信息可以在插件页面中找到。我这样做的方式是在每次浏览器会话后过期。
jQuery:
如果设置了 cookie,您可以轻松地将其反转为隐藏。1. 设置cookie 2. if 语句触发隐藏,如果设置了cookie。
// If "welcome" cookie is not set...
if ( $.cookie('welcome') === null ) {
// Show welcome text.
$('#welcome').show();
// Set the "welcome" cookie, so that the
// welcome text will not be shown after this.
$.cookie('welcome', true );
}
CSS:
#welcome {
display: none;
}
HTML:
<div id="welcome">Welcome</div>
放置带有标志的计时器,然后重定向到您网站的主页。
setTimeout(function() {window.location.href = "/NewPage.php";}, 2000);
您可以使用会话来处理此问题。一个例子:
<?php
$_SESSION['new'] = true;
?>
首次访问主页 - 在 cookie 中定义一个标志,并在每次访问页面时检查此标志