Maison > Article > interface Web > Exercice pratique : js pour transférer des données entre des pages Web
1. On estime que peu de gens savent qu'il existe une API window.postMessage dans l'API HTML5. La fonction de window.postMessage
permet aux programmeurs d'envoyer des informations de données entre deux fenêtres/cadres à travers des domaines. Fondamentalement, c'est comme AJAX inter-domaines, mais au lieu d'interagir entre le navigateur et le serveur, il communique entre deux clients. Jetons un coup d'œil au fonctionnement de window.postMessage
. Tous les navigateurs, à l'exception d'IE6 et IE7, prennent en charge cette fonctionnalité.
2. Créez d'abord un fichier index.html. (Lors du test, vous devez utiliser le serveur pour tester ; le début de l'adresse file:// est erroné et ne permet pas l'accès à l'envoi (car window.postMessage
cette méthode est cross-domain et est presque le même qu'ajax, donc c'est très similaire) )
<!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 Le code lors de la création du fichier lister.html est le suivant :
<!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. Le résultat est le suivant :
Recommandations associées :
Quatre façons d'implémenter le transfert de paramètres entre des pages html à l'aide de javascript
Comment implémenter des pages HTML Passer les paramètres lors du saut
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!