En esta página

QWebEngineScript Class

La clase QWebEngineScript encapsula un programa JavaScript. Más...

Cabecera: #include <QWebEngineScript>
CMake: find_package(Qt6 REQUIRED COMPONENTS WebEngineCore)
target_link_libraries(mytarget PRIVATE Qt6::WebEngineCore)
qmake: QT += webenginecore
En QML: webEngineScript

Tipos públicos

enum InjectionPoint { DocumentCreation, DocumentReady, Deferred }
enum ScriptWorldId { MainWorld, ApplicationWorld, UserWorld }

Propiedades

Funciones públicas

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

Descripción Detallada

QWebEngineScript permite la inyección programática de los llamados scripts de usuario en el motor JavaScript en diferentes puntos, determinados por injectionPoint(), durante la carga de los contenidos web.

Los scripts pueden ejecutarse en el mundo JavaScript principal, junto con el resto del JavaScript procedente de los contenidos web, o en su propio mundo aislado. Mientras que se puede acceder al DOM de la página desde cualquier mundo, las variables JavaScript de una función definida en un mundo no son accesibles desde otro diferente. ScriptWorldId proporciona algunos ID predefinidos para este propósito.

Se admiten los siguientes atributos de Greasemonkey: @exclude, @include, @name, @match, y @run-at.

Utilice QWebEnginePage::scripts() y QWebEngineProfile::scripts() para acceder a la colección de scripts asociados a una sola página o a varias páginas que compartan el mismo perfil.

Véase también Inyección de scripts.

Documentación de tipos de miembros

enum QWebEngineScript::InjectionPoint

Este enum describe el momento de la inyección del script:

ConstanteValorDescripción
QWebEngineScript::DocumentCreation2El script se ejecutará tan pronto como se cree el documento. Esto no es adecuado para ninguna operación DOM.
QWebEngineScript::DocumentReady1El script se ejecutará tan pronto como el DOM esté listo. Esto es equivalente al evento DOMContentLoaded en JavaScript.
QWebEngineScript::Deferred0El script se ejecutará cuando finalice la carga de la página, o 500ms después de que el documento esté listo, lo que ocurra primero.

enum QWebEngineScript::ScriptWorldId

Este enum proporciona IDs de mundos predefinidos para aislar los scripts de usuario en mundos diferentes:

ConstanteValorDescripción
QWebEngineScript::MainWorld0El mundo utilizado por los contenidos web de la página. Puede ser útil para exponer funcionalidad personalizada a los contenidos web en determinados escenarios.
QWebEngineScript::ApplicationWorld1El mundo aislado por defecto utilizado para la funcionalidad a nivel de aplicación implementada en JavaScript.
QWebEngineScript::UserWorld2El primer mundo aislado que utilizarán los scripts establecidos por los usuarios si la aplicación no hace uso de más mundos. Como regla general, si esa funcionalidad está expuesta a los usuarios de la aplicación, cada script individual debería probablemente obtener su propio mundo aislado.

Documentación de propiedades

injectionPoint : InjectionPoint

Esta propiedad contiene el punto del proceso de carga en el que se ejecutará el script.

El valor por defecto es QWebEngineScript::Deferred.

Funciones de acceso:

QWebEngineScript::InjectionPoint injectionPoint() const
void setInjectionPoint(QWebEngineScript::InjectionPoint)

Véase también InjectionPoint.

name : QString

Esta propiedad contiene el nombre del script.

Puede ser útil para recuperar un script concreto de QWebEngineScriptCollection.

Funciones de acceso:

QString name() const
void setName(const QString &)

Véase también QWebEngineScriptCollection::find().

runsOnSubFrames : bool

Esta propiedad indica si el script se ejecuta en todos los fotogramas de la página o sólo en el fotograma principal.

Funciones de acceso:

bool runsOnSubFrames() const
void setRunsOnSubFrames(bool on)

sourceCode : QString

Esta propiedad contiene la fuente del script.

Funciones de acceso:

QString sourceCode() const
void setSourceCode(const QString &)

sourceUrl : QUrl

Esta propiedad contiene la ubicación de la fuente remota del script de usuario (si existe).

A diferencia de setSourceCode(), establecer esta propiedad permite referirse a scripts de usuario que no están ya cargados en memoria, por ejemplo, cuando están almacenados en disco.

Al establecer este valor, cambiará la dirección sourceCode del script.

Nota: Por el momento, sólo se admiten fuentes basadas en archivos.

Funciones de acceso:

QUrl sourceUrl() const
void setSourceUrl(const QUrl &url)

Véase también sourceCode.

worldId : quint32

Esta propiedad contiene el ID del mundo que define en qué mundo se ejecuta el script.

Debe estar entre 0 y 256.

Funciones de acceso:

quint32 worldId() const
void setWorldId(quint32)

Documentación de Funciones Miembro

QWebEngineScript::QWebEngineScript()

Construye un script nulo.

QWebEngineScript::QWebEngineScript(const QWebEngineScript &other)

Construye un script de usuario utilizando el contenido de other.

[noexcept] QWebEngineScript::~QWebEngineScript()

Destruye un guión.

[noexcept] void QWebEngineScript::swap(QWebEngineScript &other)

Intercambia el contenido del script con el contenido de other.

bool QWebEngineScript::operator!=(const QWebEngineScript &other) const

Devuelve true si el script no es igual a other, en caso contrario devuelve false.

QWebEngineScript &QWebEngineScript::operator=(const QWebEngineScript &other)

Asigna other al guión.

bool QWebEngineScript::operator==(const QWebEngineScript &other) const

Devuelve true si el script es igual a other, en caso contrario devuelve 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.