私のサイトには、私のウェブサイト ( www.mysite.com ) を開いたときに実行されるウェルカム アニメーション (jquery で作成) があります。次に、同じユーザーが私のサイトの別のページ、たとえばwww.mysite.com/aboutに移動し、クリックしてホームに戻ります ( www.mysite.com ) アニメーションが再び表示されます。どうすればこれを制限できますか?
セッションや settimeout などを配置するなど、いくつかのロジックを共有します。
これは、 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>
サーバー側またはクライアント側のいずれかでCookieを設定できます。Cookieが設定されているかどうかを確認し、Cookieが設定されている場合はウェルカムボックスを表示しないでください。それ以外の場合はウェルカムボックスを表示します...
PHP では、setcookie 関数を使用してセッション Cookie を設定できます。以下のリンクを参照してください。
http://php.net/manual/en/function.setcookie.php
JQuery を使用して Cookie を設定する方法については、次のリンクを参照してください: jQuery で Cookieを設定/設定解除するにはどうすればよいですか?
ホームページを読み込むたびに、if ステートメントを使用して Cookie が設定されているかどうかを確認できます。Cookie が設定されていない場合は、アニメーションを実行します。
アニメーション スクリプト内。Cookie がアクティブな間はスクリプトが再度実行されないように、必ず Cookie を設定してください。
最初にメインページにアクセスします-Cookieにフラグを定義し、ページにアクセスするたびにこのフラグを確認します
これを処理するためにセッションを使用できます。例:
<?php
$_SESSION['new'] = true;
?>
フラグ付きのタイマーを配置し、サイトのメイン ページにリダイレクトします。
setTimeout(function() {window.location.href = "/NewPage.php";}, 2000);