0

在我的网站中,我有一个欢迎动画(使用 jquery 创建),当任何人打开我的网站(www.mysite.com)时它就会运行。然后同一用户转到我网站中的另一个页面,例如www.mysite.com/about,然后单击返回主页 ( www.mysite.com ),动画再次显示。我该如何限制这个?

分享一些逻辑,例如放置会话或 settimeout 或类似的东西。

4

6 回答 6

1

您可以在服务器端或客户端设置 cookie 并检查是否设置了 cookie 如果设置了 cookie 然后不显示欢迎框,否则显示欢迎框...

在 php 中,您可以使用 setcookie 函数设置会话 cookie,请参见以下链接:-

http://php.net/manual/en/function.setcookie.php
于 2013-01-03T07:40:42.820 回答
1

有关如何使用 JQuery 设置 cookie 的信息,请参阅以下链接: 如何使用 jQuery 设置/取消设置 cookie?

每次加载主页时,您都可以使用 if 语句检查 cookie 是否设置。如果未设置 cookie,则运行动画。

在动画脚本中;确保您设置了 cookie,以便在 cookie 处于活动状态时脚本不会再次运行。

于 2013-01-03T07:43:55.827 回答
1

这就是使用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>​
于 2013-01-03T08:23:26.467 回答
0

放置带有标志的计时器,然后重定向到您网站的主页。

 setTimeout(function() {window.location.href = "/NewPage.php";}, 2000);
于 2013-01-03T07:48:25.543 回答
0

您可以使用会话来处理此问题。一个例子:

<?php
$_SESSION['new'] = true;
?>
于 2013-01-03T07:49:20.843 回答
0

首次访问主页 - 在 cookie 中定义一个标志,并在每次访问页面时检查此标志

于 2013-01-03T07:52:45.580 回答