Frage

Hallo, ich möchte, dass die Navigation auf meiner Website beim Besuch meiner Website verblassen und anwesend bleibt (dh nicht wieder einverlassen), wenn Sie andere Seiten der Website besuchen.

Wäre der beste Weg, dies zu erreichen, um JQuery zu sagen, dass er die Wirkung ignorieren soll, wenn sie aus derselben Domäne besuchen? Wenn ja, kann mir jemand sagen, wie ich das schreiben würde?

Vielen Dank, Gavin

War es hilfreich?

Lösung

Eine einfache Möglichkeit, dies ohne Cookies zu tun, besteht darin, das Dokument zu verwenden. Referrer -Eigenschaft.

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

Im Wesentlichen überprüfen wir nur, ob die Seite, auf der der Benutzer war, nichts war (sie haben ein neues Browserfenster geöffnet) oder befand sich nicht auf derselben Domäne wie die aktuelle Seite.

Andere Tipps

Sie können nicht garantieren, dass ein Benutzer Cookies eingeschaltet hat, damit diese Lösung funktioniert. Sie müssen zuerst einen Scheck hinzufügen, um festzustellen, ob Cookies vor der Implementierung eingeschaltet werden. Sie können überprüfen, ob Cookies mit einem Einschalten eingeschaltet werden Methode wie diese.

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";
    }
}

Die einzige Möglichkeit, zu sehen, ob dies der erste Zugriff eines Benutzers ist, ist das Vorhandensein eines Cookie -Satzes von Ihrer Website.

Dies ist offensichtlich nicht zuverlässig, da der Benutzer möglicherweise Cookies ausgeschaltet oder gelöscht hat.

Ihr Cookie wird im Server -Seitencode abgerufen und dann an (z. B.) einer HTML -versteckten Variablen ausgeschrieben, die von JavaScript/JQuery zugänglich ist.

Die Einzelheiten des Servercodes hängen von Ihrer Serversprache ab.

Sie könnten Cookies verwenden. Sehen: http://plugins.jquery.com/project/cookie

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top