Inhaltsverzeichnis
回复内容:
Heim Web-Frontend H5-Tutorial Html5 postMessage?

Html5 postMessage?

Jun 07, 2016 am 08:42 AM
postmessage

a标签打开一个新页面 想用postMessage的方式传递些数据 但是一直没有成功
在外面包了一层 定时器就OK了。
求解~~
没有跨域的问题
我在想 新打开的页面是否‘太慢’了 根本没有响应postmessage事件

回复内容:

postMessage发送消息是给当时window里的document。而刚open时,document是about:blank。要等demo.html实际开始加载(至少要等到browser开始接受response的body的第一个字节),postMessage才能发送到demo.html。

所以setTimeout也不是很靠谱,比如网络连接时间比较长,超过100ms,也不会成功。

靠谱的方式是等待demo.html向父窗口发回第一个消息时,再向demo.html发送消息。

<span class="kd">var</span> <span class="nx">newWin</span> <span class="o">=</span> <span class="p">...</span>
<span class="nb">window</span><span class="p">.</span><span class="nx">addEventListener</span><span class="p">(</span><span class="s1">'message'</span><span class="p">,</span> <span class="nx">e</span> <span class="o">=></span> <span class="p">{</span>
  <span class="k">if</span> <span class="p">(</span><span class="cm">/* got ready message from demo.html */</span><span class="p">)</span> <span class="p">{</span>
    <span class="nx">newWin</span><span class="p">.</span><span class="nx">postMessage</span><span class="p">(...)</span>
  <span class="p">}</span>
<span class="p">})</span>
Nach dem Login kopieren
因为新窗口根本没加载好啊。open之后获得新窗口的句柄,然后为这个句柄设置onload事件,在onload事件里发送消息
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie verwende ich Ansichtsfenster -Meta -Tags, um die Seite zu steuern, die auf mobilen Geräten skaliert wird? Wie verwende ich Ansichtsfenster -Meta -Tags, um die Seite zu steuern, die auf mobilen Geräten skaliert wird? Mar 13, 2025 pm 08:00 PM

In dem Artikel werden die Meta-Tags mit Ansichtsfenster besprochen, um die Seite zu steuern, die auf mobilen Geräten skaliert und sich auf Einstellungen wie Breite und initiale Maßstäbe für optimale Reaktionsfähigkeit und Leistung konzentriert.Character Count: 159

Wie erstelle ich interaktive Spiele mit HTML5 und JavaScript? Wie erstelle ich interaktive Spiele mit HTML5 und JavaScript? Mar 10, 2025 pm 06:34 PM

In diesem Artikel werden interaktive HTML5 -Spiele mit JavaScript erstellt. Es umfasst das Spieldesign, die HTML -Struktur, das CSS -Styling, die JavaScript -Logik (einschließlich Ereignisbearbeitung und -animation) und die Audio -Integration. Essentielle JavaScript -Bibliotheken (Phaser, PI

Wie füge ich meiner HTML5 -Website Audio hinzu? Wie füge ich meiner HTML5 -Website Audio hinzu? Mar 10, 2025 pm 03:01 PM

In diesem Artikel wird erläutert, wie Audio in HTML5 mit dem & lt; audio & gt; Element, einschließlich Best Practices für die Formatauswahl (MP3, OGG Vorbis), Dateioptimierung und JavaScript -Steuerung für die Wiedergabe. Es betont die Verwendung von mehreren Audio f f

Wie benutze ich die API der HTML5 -Seite Sichtbarkeit, um zu erkennen, wann eine Seite sichtbar ist? Wie benutze ich die API der HTML5 -Seite Sichtbarkeit, um zu erkennen, wann eine Seite sichtbar ist? Mar 13, 2025 pm 07:51 PM

In dem Artikel werden die Sichtbarkeits -API der HTML5 -Seite mit der Sichtbarkeit von Seiten ermittelt, die Benutzererfahrung verbessert und die Ressourcennutzung optimiert. Zu den wichtigsten Aspekten gehören die Pause, die Verringerung der CPU -Last und die Verwaltung von Analysen auf der Grundlage von Sichtbarkeitsänderungen.

Wie gehe ich mit der Privatsphäre und Berechtigungen des Benutzer Ort mit der Geolocation -API um? Wie gehe ich mit der Privatsphäre und Berechtigungen des Benutzer Ort mit der Geolocation -API um? Mar 18, 2025 pm 02:16 PM

In dem Artikel wird die Verwaltung der Privatsphäre und Berechtigungen des Benutzerstandorts mithilfe der Geolocation -API erörtert, wobei die Best Practices für die Anforderung von Berechtigungen, die Gewährleistung der Datensicherheit und die Einhaltung der Datenschutzgesetze hervorgehoben werden.

Wie verwende ich HTML5 -Formulare für Benutzereingaben? Wie verwende ich HTML5 -Formulare für Benutzereingaben? Mar 10, 2025 pm 02:59 PM

In diesem Artikel wird erläutert, wie HTML5 -Formulare erstellt und validiert werden. Es beschreibt die Form & gt; Element, Eingabetypen (Text, E -Mail, Nummer usw.) und Attribute (erforderlich, Muster, min, max). Die Vorteile von HTML5 -Formen gegenüber älteren Methoden, inkl.

Wie verwende ich die HTML5 -Drag & Drop -API für interaktive Benutzeroberflächen? Wie verwende ich die HTML5 -Drag & Drop -API für interaktive Benutzeroberflächen? Mar 18, 2025 pm 02:17 PM

In dem Artikel wird erläutert, wie die HTML5 -Drag & Drop -API verwendet wird, um interaktive Benutzeroberflächen zu erstellen, Schritte zu detaillieren, um Elemente draggierbar zu machen, Schlüsselereignisse zu verarbeiten und Benutzererfahrung mit benutzerdefiniertem Feedback zu verbessern. Es wird auch gemeinsame Fallstricke zu a diskutiert

Wie verwende ich die HTML5 WebSockets -API für die bidirektionale Kommunikation zwischen Client und Server? Wie verwende ich die HTML5 WebSockets -API für die bidirektionale Kommunikation zwischen Client und Server? Mar 12, 2025 pm 03:20 PM

In diesem Artikel werden die HTML5 WebSockets-API für die Kommunikation zwischen bidirektionaler Client-Server in Echtzeit erläutert. Es werden clientseitige (JavaScript) und serverseitige (Python/Flask) -implementierungen beschrieben, die Herausforderungen wie Skalierbarkeit, staatliches Management, ein

See all articles