2017-05-19 3 views
0

Wenn ich in der JavaScript-Welt auf eine Schaltfläche auf Seite A klicke und eine neue Registerkarte öffne (Aufruf von Seite B), kann der Browserverlauf von Seite A abgerufen werden Seite B? In meinem Fall gibt es keine Möglichkeit, Änderungen auf Seite A vorzunehmen, daher ist das Senden von Daten über eine Abfragezeichenfolge oder ähnliches nicht möglich. Ich brauche nur die URL, von der Seite B kommt. Vielen Dank!JavaScript ruft den Browserverlauf von einer neuen Registerkarte ab

+0

Definitiv nicht, wenn sie in verschiedenen Bereichen sind ... Ich bezweifle, auch wenn sie es sind. Da Sie sagen, dass "Seite A" nicht verfügbar ist, schätze ich, dass Sie nicht viel tun können. Sie * können * die letzte URL über ['document.referrer'] erhalten (https://developer.mozilla.org/en-US/docs/Web/API/Document/referrer). Beachten Sie, dass Sie dem Wert von "Seite A" nicht vertrauen sollten, wenn Sie ihm nicht vertrauen. es ist trivial zu spoofen. –

Antwort

0

Wenn ich Ihre Frage richtig verstanden habe und Sie möchten die URL der Seite A, die Sie auf Seite B gesendet hat, dann können Sie die Referrer auf die Website mit document.referrer.split('/'); bekommen.

Wenn Sie möchten, wie Ihre Formulierung implizieren kann, greifen Sie auf die Geschichte des Browsers, die nicht über gängiges Javascript möglich ist.

0

Sie können die back() Methode in Javascript verwenden.

function getHistory(){ 
 
     var $history = window.history.back(); 
 
     window.open($history, '_blank'); 
 
     window.focus(); 
 
    }
<input type="button" value="Click me" onclick="getHistory();">

bearbeiten: HINWEIS: neue Registerkarte öffnen, ist nicht so einfach. Sie können this

0

Scheint, wie Sie dies über document.referrer erreichen könnte, lesen Sie die Sie die URL der Website geben, die das aktuelle Dokument geladen: bei weitem kein JavaScript

https://www.w3schools.com/jsref/prop_doc_referrer.asp

Ich bin Experte, aber aus dem, was ich gelesen habe, ist es nicht möglich, die Geschichte des Browsers selbst und die Geschichte API wie Geschichte.Rückläufer() und History.Forward() können Sie nur vorwärts und rückwärts navigieren.

Verwandte Themen