WebEngineScript QML Type
Ermöglicht die programmatische Einbindung von Skripten in die JavaScript-Engine. Mehr...
Import Statement: | import QtWebEngine |
Since: | QtWebEngine 1.1 |
In C++: | QWebEngineScript |
Eigenschaften
- injectionPoint : enumeration
- name : string
- runsOnSubFrames : bool
- sourceCode : string
- sourceUrl : url
- worldId : enumeration
Ausführliche Beschreibung
Der Typ WebEngineScript ermöglicht die programmatische Injektion von so genannten Benutzerskripten in die JavaScript-Engine an verschiedenen, von injectionPoint festgelegten Punkten während des Ladens von Webinhalten.
Skripte können entweder in der Haupt-JavaScript-Welt, zusammen mit dem restlichen JavaScript des Webinhalts, oder in einer eigenen isolierten Welt ausgeführt werden. Während auf das DOM der Seite von jeder Welt aus zugegriffen werden kann, sind die JavaScript-Variablen einer Funktion, die in einer Welt definiert ist, von einer anderen Welt aus nicht zugänglich. Die Eigenschaft worldId bietet zu diesem Zweck einige vordefinierte IDs.
Die folgenden Greasemonkey-Attribute werden unterstützt: @exclude
, @include
, @name
, @match
, und @run-at
.
Verwenden Sie WebEngineScriptCollection, um auf eine Liste von Skripten zuzugreifen, die mit der Webansicht verbunden sind.
Eigenschaft Dokumentation
injectionPoint : enumeration |
Der Punkt im Ladevorgang, an dem das Skript ausgeführt werden soll. Der Standardwert ist Deferred
.
Konstante | Beschreibung |
---|---|
WebEngineScript.DocumentCreation | Das Skript wird ausgeführt, sobald das Dokument erstellt ist. Dies ist für keine DOM-Operation geeignet. |
WebEngineScript.DocumentReady | Das Skript wird ausgeführt, sobald das DOM bereit ist. Dies entspricht dem Auslösen des Ereignisses DOMContentLoaded in JavaScript. |
WebEngineScript.Deferred | Das Skript wird ausgeführt, wenn das Laden der Seite abgeschlossen ist oder 500 ms nachdem das Dokument bereit ist, je nachdem, was zuerst eintritt. |
name : string |
Der Name des Skripts. Kann nützlich sein, um ein bestimmtes Skript von der Methode WebEngineScriptCollection.find abzurufen.
runsOnSubFrames : bool |
Setzen Sie diese Eigenschaft auf true
, wenn das Skript in jedem Frame der Seite ausgeführt wird, oder false
, wenn es nur für den Hauptframe ausgeführt wird. Der Standardwert ist false
.
sourceCode : string |
Diese Eigenschaft enthält den JavaScript-Quellcode des Benutzerskripts.
Siehe auch sourceUrl.
sourceUrl : url |
Diese Eigenschaft enthält den entfernten Quellort des Benutzerskripts (falls vorhanden).
Im Gegensatz zu sourceCode kann mit dieser Eigenschaft auf Benutzerskripte verwiesen werden, die noch nicht in den Speicher geladen sind, z. B. wenn sie auf der Festplatte gespeichert sind.
Durch das Setzen dieser Eigenschaft wird die sourceCode des Skripts geändert.
Hinweis: Zurzeit werden nur dateibasierte Quellen unterstützt.
Siehe auch sourceCode.
worldId : enumeration |
Die Welt-ID, die definiert, in welcher isolierten Welt das Skript ausgeführt wird.
Konstante | Beschreibung |
---|---|
WebEngineScript.MainWorld | Die Welt, die von den Web-Inhalten der Seite verwendet wird. Sie kann nützlich sein, um in bestimmten Szenarien benutzerdefinierte Funktionen für Webinhalte bereitzustellen. |
WebEngineScript.ApplicationWorld | Die isolierte Standardwelt, die für in JavaScript implementierte Funktionen auf Anwendungsebene verwendet wird. |
WebEngineScript.UserWorld | Die erste isolierte Welt, die von Skripten verwendet wird, die von den Benutzern festgelegt wurden, wenn die Anwendung nicht von weiteren Welten Gebrauch macht. Als Faustregel gilt, dass jedes einzelne Skript seine eigene isolierte Welt erhalten sollte, wenn diese Funktionalität den Benutzern der Anwendung zur Verfügung gestellt wird. |
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.