Spec-Zone.ru › Qt 5.15

Класс QQuickWebEngineScript

Позволяет встраивать скрипты в движок JavaScript. Подробнее...

Заголовок: #include <QQuickWebEngineScript>
С тех пор: Qt 5.9
Создаётся: WebEngineScript
Наследует: QObject

Этот класс был представлен в Qt 5.9.

  • Список всех членов, включая унаследованные

Общедоступные типы

перечисление InjectionPoint { Создание документа, Готовность документа, Отложенное }
перечисление ScriptWorldId { Основной мир, Мир приложения, Пользовательский мир }

Свойства

  • injectionPoint : InjectionPoint
  • name : QString
  • runOnSubframes : bool
  • sourceCode : QString
  • sourceUrl : QUrl
  • worldId : ScriptWorldId

Общедоступные функции

QQuickWebEngineScript(QObject *parent = Q_NULLPTR)
QQuickWebEngineScript::InjectionPoint injectionPoint() const
QString name() const
bool runOnSubframes() const
void setInjectionPoint(QQuickWebEngineScript::InjectionPoint injectionPoint)
void setName(const QString &name)
void setRunOnSubframes(bool on)
void setSourceCode(const QString &code)
void setSourceUrl(const QUrl &url)
void setWorldId(QQuickWebEngineScript::ScriptWorldId scriptWorldId)
QString sourceCode() const
QUrl sourceUrl() const
QString toString() const
QQuickWebEngineScript::ScriptWorldId worldId() const

Сигналы

void injectionPointChanged(QQuickWebEngineScript::InjectionPoint injectionPoint)
void nameChanged(const QString &name)
void runOnSubframesChanged(bool on)
void sourceCodeChanged(const QString &code)
void sourceUrlChanged(const QUrl &url)
void worldIdChanged(QQuickWebEngineScript::ScriptWorldId scriptWorldId)

Подробное описание

Тип QQuickWebEngineScript позволяет программно встраивать так называемые пользовательские скрипты в движок JavaScript в разные моменты, определяемые свойством injectionPoint, во время загрузки веб-контента.

Скрипты могут выполняться либо в главном мире JavaScript, вместе со всем JavaScript, полученным из веб-контента, либо в собственном изолированном мире. Хотя к DOM страницы можно получить доступ из любого мира, переменные JavaScript функции, определённой в одном мире, недоступны из другого. Свойство worldId предоставляет некоторые предопределённые идентификаторы для этой цели.

Документация по типам членов

перечисление QQuickWebEngineScript::InjectionPoint

Точка в процессе загрузки, в которой будет выполняться скрипт.

Постоянная Значение Описание
QQuickWebEngineScript::DocumentCreation 2 Скрипт будет выполнен как только документ будет создан. Это не подходит для любых операций с DOM.
QQuickWebEngineScript::DocumentReady 1 Скрипт выполнится, как только DOM будет готов. Это эквивалентно срабатыванию события DOMContentLoaded в JavaScript.
QQuickWebEngineScript::Deferred 0 Скрипт выполнится, когда завершится загрузка страницы, или через 500 мс после готовности документа, в зависимости от того, что произойдёт раньше.

перечисление QQuickWebEngineScript::ScriptWorldId

Идентификатор мира, определяющий, в каком изолированном мире выполняется скрипт. Помимо этих предопределённых идентификаторов можно использовать пользовательские, но они должны быть целыми числами между 0 и 256.

Постоянная Значение Описание
QQuickWebEngineScript::MainWorld 0 Мир, используемый веб-контентом страницы. Это может быть полезно для экспонирования пользовательской функциональности веб-контенту в определённых сценариях.
QQuickWebEngineScript::ApplicationWorld 1 Стандартный изолированный мир, используемый для функциональности уровня приложения, реализованной в JavaScript.
QQuickWebEngineScript::UserWorld 2 Первый изолированный мир, используемый скриптами, заданными пользователями, если приложение не использует больше миров. Как правило, если эта функциональность предоставляется пользователям приложения, каждому отдельному скрипту, вероятно, нужен свой изолированный мир.

Документация свойств

injectionPoint : InjectionPoint

Это свойство указывает момент в процессе загрузки, когда сценарий будет выполнен.

Значение по умолчанию — Deferred.

Функции доступа:

QQuickWebEngineScript::InjectionPoint injectionPoint() const
void setInjectionPoint(QQuickWebEngineScript::InjectionPoint injectionPoint) [см. примечание ниже]

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

Сигнал уведомления:

void injectionPointChanged(QQuickWebEngineScript::InjectionPoint injectionPoint)

name : QString

Это свойство содержит имя сценария.

Может быть полезно для извлечения определенного сценария из QQuickWebEngineProfile::userScripts.

Функции доступа:

QString name() const
void setName(const QString &name) [см. примечание ниже]

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

Сигнал уведомления:

void nameChanged(const QString &name)

runOnSubframes : bool

Это свойство указывает, выполняется ли сценарий на каждом фрейме или только на главном.

Установите это свойство в true , если сценарий выполняется на каждом фрейме страницы, или в false , если он выполняется только для главного фрейма. Значение по умолчанию — false.

Функции доступа:

bool runOnSubframes() const
void setRunOnSubframes(bool on) [см. примечание ниже]

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

Сигнал уведомления:

void runOnSubframesChanged(bool on)

sourceCode : QString

Это свойство содержит исходный код JavaScript пользовательского сценария.

Функции доступа:

QString sourceCode() const
void setSourceCode(const QString &code) [см. примечание ниже]

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

Сигнал уведомления:

void sourceCodeChanged(const QString &code)

См. также QQuickWebEngineScript::sourceUrl.

sourceUrl : QUrl

Это свойство содержит удаленное местоположение источника пользовательского сценария (если таковое имеется).

В отличие от sourceCode, это свойство позволяет ссылаться на пользовательские сценарии, которые ещё не загружены в память, например, если они хранятся на диске.

Установка этого свойства изменит sourceCode сценария.

Примечание: В настоящее время поддерживаются только источники на основе файлов.

Функции доступа:

QUrl sourceUrl() const
void setSourceUrl(const QUrl &url) [см. примечание ниже]

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

Сигнал уведомления:

void sourceUrlChanged(const QUrl &url)

См. также QQuickWebEngineScript::sourceCode.

worldId : ScriptWorldId

Это свойство содержит идентификатор мира, определяющий изолированный мир, в котором выполняется сценарий.

Функции доступа:

QQuickWebEngineScript::ScriptWorldId worldId() const
void setWorldId(QQuickWebEngineScript::ScriptWorldId scriptWorldId) [см. примечание ниже]

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

Сигнал уведомления:

void worldIdChanged(QQuickWebEngineScript::ScriptWorldId scriptWorldId)

Документация по членам-функциям

QQuickWebEngineScript::QQuickWebEngineScript(QObject *parent = Q_NULLPTR)

Создает новый QQuickWebEngineScript с родителем parent.

QString QQuickWebEngineScript::toString() const

Возвращает объект сценария в виде строки.

Примечание: Эта функция может вызываться через систему метаобъектов и из QML. См. Q_INVOKABLE.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qquickwebenginescript.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API