QWebEngineScript Class
La classe QWebEngineScript encapsule un programme JavaScript. Plus d'informations...
| En-tête : | #include <QWebEngineScript> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS WebEngineCore)target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore) |
| qmake : | QT += webenginecore |
| En QML : | webEngineScript |
Types publics
| enum | InjectionPoint { DocumentCreation, DocumentReady, Deferred } |
| enum | ScriptWorldId { MainWorld, ApplicationWorld, UserWorld } |
Propriétés
|
|
Fonctions publiques
| QWebEngineScript() | |
| QWebEngineScript(const QWebEngineScript &other) | |
| ~QWebEngineScript() | |
| QWebEngineScript::InjectionPoint | injectionPoint() const |
| QString | name() const |
| bool | runsOnSubFrames() const |
| void | setInjectionPoint(QWebEngineScript::InjectionPoint) |
| void | setName(const QString &) |
| void | setRunsOnSubFrames(bool on) |
| void | setSourceCode(const QString &) |
| void | setSourceUrl(const QUrl &url) |
| void | setWorldId(quint32) |
| QString | sourceCode() const |
| QUrl | sourceUrl() const |
| void | swap(QWebEngineScript &other) |
| quint32 | worldId() const |
| bool | operator!=(const QWebEngineScript &other) const |
| QWebEngineScript & | operator=(const QWebEngineScript &other) |
| bool | operator==(const QWebEngineScript &other) const |
Description détaillée
QWebEngineScript permet l'injection programmatique de ce que l'on appelle des scripts utilisateur dans le moteur JavaScript à différents points, déterminés par injectionPoint(), pendant le chargement des contenus web.
Les scripts peuvent être exécutés soit dans le monde JavaScript principal, avec le reste du JavaScript provenant du contenu web, soit dans leur propre monde isolé. Alors que le DOM de la page est accessible depuis n'importe quel monde, les variables JavaScript d'une fonction définie dans un monde ne sont pas accessibles depuis un autre monde. ScriptWorldId fournit des identifiants prédéfinis à cet effet.
Les attributs Greasemonkey suivants sont pris en charge : @exclude, @include, @name, @match, et @run-at.
Utilisez QWebEnginePage::scripts() et QWebEngineProfile::scripts() pour accéder à la collection de scripts associés à une seule page ou à un certain nombre de pages partageant le même profil.
Voir aussi Injection de scripts.
Documentation sur les types de membres
enum QWebEngineScript::InjectionPoint
Cette énumération décrit le moment de l'injection du script :
| Constante | Valeur | Description |
|---|---|---|
QWebEngineScript::DocumentCreation | 2 | Le script sera exécuté dès la création du document. Ceci n'est pas approprié pour les opérations du DOM. |
QWebEngineScript::DocumentReady | 1 | Le script sera exécuté dès que le DOM sera prêt. Cela équivaut au déclenchement de l'événement DOMContentLoaded en JavaScript. |
QWebEngineScript::Deferred | 0 | Le script sera exécuté à la fin du chargement de la page ou 500 ms après que le document est prêt, selon ce qui se produit en premier. |
enum QWebEngineScript::ScriptWorldId
Cette énumération fournit des identifiants de monde prédéfinis permettant d'isoler les scripts utilisateur dans différents mondes :
| Constante | Valeur | Description |
|---|---|---|
QWebEngineScript::MainWorld | 0 | Le monde utilisé par le contenu web de la page. Il peut être utile pour exposer des fonctionnalités personnalisées aux contenus web dans certains scénarios. |
QWebEngineScript::ApplicationWorld | 1 | Le monde isolé par défaut utilisé pour les fonctionnalités au niveau de l'application mises en œuvre en JavaScript. |
QWebEngineScript::UserWorld | 2 | Le premier monde isolé utilisé par les scripts définis par les utilisateurs si l'application n'utilise pas d'autres mondes. En règle générale, si cette fonctionnalité est exposée aux utilisateurs de l'application, chaque script individuel devrait probablement avoir son propre monde isolé. |
Documentation sur les propriétés
injectionPoint : InjectionPoint
Cette propriété indique le point du processus de chargement où le script sera exécuté.
La valeur par défaut est QWebEngineScript::Deferred.
Fonctions d'accès :
| QWebEngineScript::InjectionPoint | injectionPoint() const |
| void | setInjectionPoint(QWebEngineScript::InjectionPoint) |
Voir également InjectionPoint.
name : QString
Cette propriété contient le nom du script.
Elle peut être utile pour récupérer un script particulier à partir d'un site QWebEngineScriptCollection.
Fonctions d'accès :
| QString | name() const |
| void | setName(const QString &) |
Voir également QWebEngineScriptCollection::find().
runsOnSubFrames : bool
Cette propriété indique si le script est exécuté sur chaque cadre de la page ou uniquement sur le cadre principal.
Fonctions d'accès :
| bool | runsOnSubFrames() const |
| void | setRunsOnSubFrames(bool on) |
sourceCode : QString
Cette propriété contient la source du script.
Fonctions d'accès :
| QString | sourceCode() const |
| void | setSourceCode(const QString &) |
sourceUrl : QUrl
Cette propriété contient l'emplacement de la source distante du script utilisateur (le cas échéant).
Contrairement à setSourceCode(), la définition de cette propriété permet de faire référence à des scripts utilisateur qui ne sont pas déjà chargés en mémoire, par exemple lorsqu'ils sont stockés sur le disque.
La définition de cette valeur modifie l'adresse sourceCode du script.
Remarque : à l'heure actuelle, seules les sources basées sur des fichiers sont prises en charge.
Fonctions d'accès :
| QUrl | sourceUrl() const |
| void | setSourceUrl(const QUrl &url) |
Voir également sourceCode.
worldId : quint32
Cette propriété contient l'identifiant du monde définissant le monde dans lequel le script est exécuté.
Doit être compris entre 0 et 256.
Fonctions d'accès :
| quint32 | worldId() const |
| void | setWorldId(quint32) |
Documentation des fonctions membres
QWebEngineScript::QWebEngineScript()
Construit un script nul.
QWebEngineScript::QWebEngineScript(const QWebEngineScript &other)
Construit un script utilisateur en utilisant le contenu de other.
[noexcept] QWebEngineScript::~QWebEngineScript()
Détruit un script.
[noexcept] void QWebEngineScript::swap(QWebEngineScript &other)
Remplace le contenu du script par le contenu de other.
bool QWebEngineScript::operator!=(const QWebEngineScript &other) const
Renvoie true si le script n'est pas égal à other, sinon renvoie false.
QWebEngineScript &QWebEngineScript::operator=(const QWebEngineScript &other)
Affecte other au script.
bool QWebEngineScript::operator==(const QWebEngineScript &other) const
Renvoie true si le script est égal à other, sinon renvoie false.
© 2026 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.