Zur Navigation

JavaScript Herkunftsseite feststellen und beim Verlassen wieder zurück leiten [2]

11 krieger98

Zitat von Jörg
In dem Script ist noch ein Schreibfehler, da fehlt ein u im Dateinamen:

        case '/mountainbike-workshop.htm':

(hatte ich per Copy & Paste falsch übernommen)
Vielen Dank jetzt klappt es.
Wenn der Besucher im "Workshop-Putzen-Pflege" jetzt Unterseiten aufruft und dann wieder zurück geleitet werden soll (im MTB-Workshop) mittels Referrer in einem Cookie der zwischengespeichert wird und von dort wieder ausgelesen wird. Was muss ich dann noch einfügen?

28.01.2016 16:54

12 Jörg Kruse

Das ist schon etwas aufwendiger, dafür braucht es drei Funktionen:

<script>
function getCookie(cname)
{
    var name = cname + '=';
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') {
            c = c.substring(1);
        }
        if (c.indexOf(name) == 0) {
            return c.substring(name.length, c.length);
        }
    }
    return "";
}

function getHomepage()
{
    var a = document.createElement('a');
    a.href = document.referrer;
    switch (a.pathname) {
        case '/mountainbike-workshop.htm':
        case '/trekkingrad-workshop.htm':
        case '/Rennrad_workshop.htm':
        case '/Elektrobike_workshop.htm':
            homePage = document.referrer;
            document.cookie = 'homePage=' + homePage;
            break;
        default:
            homePage = getCookie('homePage');
            if (homePage == '') {
                homePage = 'Tipps.htm';
            }
    }
    a = '';
}

function goHome()
{
    window.location.href = homePage;
}
</script>

getHomepage() wird im onload Attribut des <body> geladen:

<body onload="getHomepage()">

Mit der Funktion wird die Homepage, von der der Besucher kommt, ermittelt und ggf. im Cookie gespeichert. Zum Auslesen des Cookies wird getCookie() verwendet

goHome() wird wie gehabt im onclick Attribut des Tipps-Links aufgerufen:

<a href="Tipps.htm" target="_blank" onclick="goHome(); return false">&raquo;Home</a>

diese Funktion leitet jetzt einfach nur noch auf den durch getHomepage() ermittelten Referrer weiter

28.01.2016 21:12 | geändert: 28.01.2016 21:12

1 Forenmitglied fand diesen Beitrag gut

13 Jörg Kruse

Jetzt hast du unter mein Zitat keine Anwort geschrieben :) wegen dem Danke an mein Posting nehme ich aber an, dass das Script bei dir funktioniert?

29.01.2016 15:38

14 krieger98

Zitat von Jörg
Jetzt hast du unter mein Zitat keine Anwort geschrieben :) wegen dem Danke an mein Posting nehme ich aber an, dass das Script bei dir funktioniert?

Ja das klappt SUPER. Vielen Dank für Deine Mühe !!

29.01.2016 18:26

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]