browsingContext.contextCreated Ereignis
Das browsingContext.contextCreated Ereignis des browsingContext Moduls wird ausgelöst, wenn ein neuer Kontext im Browser erstellt wird.
Ereignisdaten
Das params Feld in der Ereignisbenachrichtigung ist ein Kontextobjekt mit den folgenden Eigenschaften:
children-
Ein Array von Kontextobjekten, das Kinderkontexte darstellt. Dieses Ereignis beinhaltet keine Kinderkontexte (
maxDepthist0). Um die Kinder eines Kontextes abzurufen, verwenden SiebrowsingContext.getTree. clientWindow-
Ein String, der die ID des Client-Fensters enthält, das diesen Kontext beinhaltet.
context-
Ein String, der die ID des neu erstellten Kontextes enthält.
originalOpener-
Ein String, der die ID des Kontextes enthält, das diesen Kontext ursprünglich geöffnet hat. Der Wert ist
null, wenn der Kontext direkt geöffnet wurde (nicht durch einen anderen Kontext). parent-
Ein String, der die ID des übergeordneten Kontextes enthält. Der Wert ist
null, wenn der Kontext keinen übergeordneten Kontext hat (d.h. es ist ein oberster Kontext). url-
Ein String, der die URL des Kontextes enthält, einschließlich des Fragments, zu dem Zeitpunkt, als er erstellt wurde. Für neu erstellte Kontexte ist der Wert
"about:blank", da das Ereignis ausgelöst wird, bevor eine Navigation stattgefunden hat und Inhalte geladen wurden. Für bestehende Kontexte zum Zeitpunkt des Abonnements reflektiert der Wert ihre aktuelle URL. userContext-
Ein String, der die ID des Benutzerkontextes enthält, der mit diesem Kontext verknüpft ist.
Beschreibung
Wenn Sie dieses Ereignis abonnieren, löst der Browser das Ereignis sofort rekursiv für alle Kontexte aus, die zum Zeitpunkt des Abonnements bereits existieren, beginnend mit obersten Kontexten bis hin zu ihren Kindern.
Wenn das Abonnement mithilfe des contexts Parameters auf bestimmte Kontexte eingegrenzt wurde, werden nur für in diesen Kontexten erstellte Kinderkontexte Ereignisse ausgelöst.
Beispiele
>Empfang eines Ereignisses für einen neuen Tab
Angenommen, Sie haben eine WebDriver BiDi-Verbindung, eine aktive Sitzung und ein Abonnement für browsingContext.contextCreated aktiv.
Wenn Ihr Automatisierungsskript einen Tab mit browsingContext.create erstellt, sendet der Browser die folgende Benachrichtigung:
{
"type": "event",
"method": "browsingContext.contextCreated",
"params": {
"context": "93ee5bd6-d256-4608-a002-9a8995cc0e5f",
"children": null,
"originalOpener": null,
"url": "about:blank",
"userContext": "default",
"clientWindow": "08c697a1-2664-447d-9c88-52bcee3bb386",
"parent": null
}
}
Empfang eines Ereignisses für einen Kinderkontext
Angenommen, Sie haben eine WebDriver BiDi-Verbindung, eine aktive Sitzung und ein Abonnement für browsingContext.contextCreated aktiv.
Angenommen, eine Seite mit einem <iframe> wird geladen. Der Browser sendet die folgende Benachrichtigung für den neuen Kinderkontext:
{
"type": "event",
"method": "browsingContext.contextCreated",
"params": {
"context": "6442450945",
"children": null,
"originalOpener": null,
"url": "about:blank",
"userContext": "default",
"clientWindow": "08c697a1-2664-447d-9c88-52bcee3bb386",
"parent": "93ee5bd6-d256-4608-a002-9a8995cc0e5f"
}
}
Identifizierung des Öffners eines Kontextes
Angenommen, Sie haben eine WebDriver BiDi-Verbindung und eine aktive Sitzung.
Betrachten Sie ein Szenario, bei dem zwei Tabs bereits geöffnet sind: Tab 1 bei https://example.com/page1.html und Tab 2 bei https://example.com/page2.html, das von Tab 1 mit window.open() geöffnet wurde. Wenn Sie browsingContext.contextCreated abonnieren, löst der Browser Ereignisse für die beiden bestehenden Kontexte aus. Das originalOpener Feld in der Benachrichtigung von Tab 2 identifiziert den Kontext, der ihn geöffnet hat.
Der Browser sendet die folgende Benachrichtigung für Tab 1:
{
"type": "event",
"method": "browsingContext.contextCreated",
"params": {
"context": "93ee5bd6-d256-4608-a002-9a8995cc0e5f",
"children": null,
"originalOpener": null,
"url": "https://example.com/page1.html",
"userContext": "default",
"clientWindow": "08c697a1-2664-447d-9c88-52bcee3bb386",
"parent": null
}
}
Diese wird sofort gefolgt von der Benachrichtigung für Tab 2:
{
"type": "event",
"method": "browsingContext.contextCreated",
"params": {
"context": "32ed30da-24ad-459d-8f0d-660526e92d96",
"children": null,
"originalOpener": "93ee5bd6-d256-4608-a002-9a8995cc0e5f",
"url": "https://example.com/page2.html",
"userContext": "default",
"clientWindow": "08c697a1-2664-447d-9c88-52bcee3bb386",
"parent": null
}
}
Spezifikationen
| Spezifikation |
|---|
| WebDriver BiDi> # event-browsingContext-contextCreated> |
Browser-Kompatibilität
Siehe auch
browsingContext.contextDestroyedEreignisbrowsingContext.createBefehlbrowsingContext.getTreeBefehlsession.subscribeBefehl