Heim > Artikel > Web-Frontend > Praktische Übung – js zum Übertragen von Daten zwischen Webseiten
1. Es wird geschätzt, dass nur wenige Menschen wissen, dass es in HTML5-APIS eine window.postMessage-API gibt. Die Funktion von window.postMessage
ermöglicht es Programmierern, Dateninformationen zwischen zwei Fenstern/Frames domänenübergreifend zu senden. Im Grunde ist es wie domänenübergreifendes AJAX, aber anstatt zwischen dem Browser und dem Server zu interagieren, kommuniziert es zwischen zwei Clients. Werfen wir einen Blick darauf, wie window.postMessage
funktioniert. Alle Browser außer IE6 und IE7 unterstützen diese Funktion.
2. Erstellen Sie zunächst eine index.html-Datei. (Beim Testen müssen Sie den Server zum Testen verwenden; der Anfang der Datei://-Adresse ist falsch und erlaubt keinen Zugriff zum Senden (da window.postMessage
diese Methode domänenübergreifend und ähnlich ist zu Ajax, daher ist es sehr ähnlich) )
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> <style> body,p{ margin: 0px; padding: 0px; } </style> </head> <body> <script> //弹出一个新窗口 var domain = 'http://localhost:8080/chenzhenhua/'; var myPopup = window.open(domain+'lister.html','myWindow');//打开另一个网址 // var array=["100","liyoubing","200"]; var array=[{"姓名":"李友冰"},{"性别":"男"}] //周期性的发送消息 setInterval(function(){ //var message = 'Hello! The time is: ' + (new Date().getTime()); // console.log('blog.local: sending message: ' + message); //array:发送消息de数据,domain: 是url; myPopup.postMessage(array,domain); },6000); </script> </body> </html>
3. Der Code beim Erstellen der Lister.html-Datei lautet wie folgt:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <script> //监听消息反馈 window.addEventListener('message',function(event) { console.log(event); if(event.origin !== 'http://localhost:8080') return; console.log('received response: ',event.data); },false); </script> </body> </html>
4. Das Ergebnis ist wie folgt:
Verwandte Empfehlungen:
So implementieren Sie die HTML-Übertragung bei Seitensprungparametern
Das obige ist der detaillierte Inhalt vonPraktische Übung – js zum Übertragen von Daten zwischen Webseiten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!