jqueryのみを使用してウェブサイトを最初に訪問するときにイベントをトリガーする方法は?

StackOverflow https://stackoverflow.com/questions/1914291

  •  19-09-2019
  •  | 
  •  

質問

こんにちは、私のウェブサイトのナビゲーションをフェードインして、私のウェブサイトにアクセスして、サイトの他のページにアクセスするときは、存在し続けます(つまり、再びフェードインしないでください)。

これを達成するための最良の方法は、同じドメインから訪問する場合、jqueryに有効なフェードを無視するように伝えることでしょうか?もしそうなら、誰かが私がこれをどのように書くか教えてもらえますか?

どうもありがとう、ギャビン

役に立ちましたか?

解決

Cookieなしでこれを行う簡単な方法は、document.referrerプロパティを使用することです。

if ( document.referrer == null || document.referrer.indexOf(window.location.hostname) < 0 ) {
// Your code here
}

基本的に、ユーザーが以前にオンになっていたページが何もなかったのを確認するだけで、現在のページと同じドメインにありませんでした。

他のヒント

このソリューションが機能するために、ユーザーがCookieをオンにすることを保証することはできません。実装する前にCookieがオンになっているかどうかを確認するには、最初にチェックを追加する必要があります。 Cookieが使用されているかどうかを確認できます このような方法.

var cookieName = 'yourcookiename';
$(function() {
    checkCookie();
});

function checkCookie() {
    if (document.cookie.length > 0 && document.cookie.indexOf(cookieName + '=') != -1) {
            // do nothing, cookie already sent
    } else {
            // handle jQuery animation

            // set the cookie to show user has already visited
            document.cookie = cookieName + "=1";
    }
}

これがユーザーの最初のアクセスであるかどうかを知ることができる唯一の方法は、サイトからのCookieセットの存在です。

ユーザーがCookieをオフにしたり、削除したりする可能性があるため、これは明らかに信頼できません。

Cookieはサーバーサイドコードで取得され、JavaScript/jQueryからアクセス可能なHTML Hidden変数に書き留めます。

サーバーコードの詳細は、サーバー言語によって異なります。

クッキーを使用できます。見る: http://plugins.jquery.com/project/cookie

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top