HTML: Zwei Seiten miteinander interagieren lassen?
Hallo,
ich habe ein HTML-Dokument mit einer div, die einen Text enthalten soll, der auf einer anderen mit einem input eingegeben wird. Das heißt, das zwei HTML-Dokumente miteinander interagieren sollen.
Seite 1: In Input wird text "x" eingegeben
Seite 2: text "x" erscheint.
Wie kann ich das möglich machen? Reicht JavaScript dafür aus?
Die Dateien sind lokal im selben Ordner gespeichert.
Vielen Dank im Voraus!
3 Antworten
Auf dem selben Browser würde ich zuerst an einen SharedWorker denken, hab damit aber noch nie gearbeitet. Das geht über JavaScript auf dem Client.
Bei unterschiedlichen Nutzern braucht man natürlich irgendeine Kommunikationsschnittstelle wie WebRTC oder einen Server. Aber auch bei WebRTC müssten da ja irgendwie die Browser aneinander vermittelt werden. Also bräuchte man da natürlich einen zentralen Server irgendwie.
JavaScript kann man aber über Nodejs (und Deno, wobei ich da nicht weiß wie weit das Projekt ist) auch auf Servern verwenden, daher reicht JS auf jeden Fall. Du meinst vermutlich eher ob man dafür einen Server braucht oder nicht.
Wenn die eine Seite (wo man den Text eingibt) auf die andere Seite (wo er angezeigt wird) weiterleitet, dann könnte man das mit Query Parametern umsetzen.
Ansonsten musst du das per Backend machen.
Die gleiche Script Datei nutzen die getElementById(...) Nutzt. Die Variable X wird dann in beiden divs genutzt. Nenne die divs mit den selben Namen
Doch. Wenn sie im selben Ordner sind. 2 .HTML und 1 .js
HTML 1:'<p id="text"></p>'
Html 2: '<p id="text"></p>'
Js:'var texte = "x";
var te = document.getElementById("text");
te.innerHTML = texte;'
Könnte Fehler haben da ich auf mein Handy geschrieben habe.
Dein Beispiel bewirkt nur, dass beide Dokumente ein Skript mit denselben Anweisungen einbinden. Trotzdem besteht keine Verbindung. Würde texte in Dokument 1 den Wert abc bekommen (bspw. nach einem Buttonklick), würde er sich in Dokument 2 nicht ändern.
Nur über eine zentrale Datenstelle (sei es nur ein Vermittler oder ein Datenspeicher), die sich beide teilen. Skript A gibt seine Information an die Datenstelle, Skript B liest sie aus.
Es geht um zwei verschiedene Seiten. Selbst wenn sie die gleiche Skriptdatei verwenden, teilen sie sich deswegen nicht denselben Speicher.