Spec-Zone.ru › Qt 5.11

Класс QWebEngineScript

Класс QWebEngineScript инкапсулирует программу JavaScript. Подробнее...

Заголовок: #include <QWebEngineScript>
qmake: QT += webenginewidgets
С момента: Qt 5.5
  • Список всех членов, включая унаследованные

Типы public

Перечисление InjectionPoint { DocumentCreation, DocumentReady, Deferred }
Перечисление ScriptWorldId { MainWorld, ApplicationWorld, UserWorld }

Функции public

QWebEngineScript()
QWebEngineScript(const QWebEngineScript &other)
~QWebEngineScript()
QWebEngineScript::InjectionPoint injectionPoint() const
bool isNull() const
QString name() const
bool runsOnSubFrames() const
void setInjectionPoint(QWebEngineScript::InjectionPoint p)
void setName(const QString &scriptName)
void setRunsOnSubFrames(bool on)
void setSourceCode(const QString &scriptSource)
void setWorldId(quint32 id)
QString sourceCode() 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

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

Класс QWebEngineScript инкапсулирует программу JavaScript.

QWebEngineScript позволяет программно вводить так называемые пользовательские скрипты в движок JavaScript в различные моменты, определяемые injectionPoint(), во время загрузки веб-контента.

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

Следующие атрибуты Greasemonkey поддерживаются начиная с Qt 5.8: @exclude, @include, @name, @match, и @run-at.

Используйте QWebEnginePage::scripts() и QWebEngineProfile::scripts(), чтобы получить доступ к коллекции скриптов, связанных с одной страницей или несколькими страницами, использующими один и тот же профиль.

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

Перечисление QWebEngineScript::InjectionPoint

Это перечисление описывает момент вставки скрипта:

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

Перечисление QWebEngineScript::ScriptWorldId

Это перечисление предоставляет предопределённые идентификаторы мира для изоляции пользовательских скриптов в разных мирах:

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

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

QWebEngineScript::QWebEngineScript()

Создаёт нулевой скрипт.

QWebEngineScript::QWebEngineScript(const QWebEngineScript &other)

Создаёт пользовательский скрипт, используя содержимое other.

QWebEngineScript::~QWebEngineScript()

Удаляет скрипт.

QWebEngineScript::InjectionPoint QWebEngineScript::injectionPoint() const

Возвращает точку в процессе загрузки, в которой будет выполняться скрипт. Значение по умолчанию — QWebEngineScript::Deferred.

См. также setInjectionPoint().

bool QWebEngineScript::isNull() const

Возвращает true если скрипт нулевой; иначе возвращает false.

QString QWebEngineScript::name() const

Возвращает имя скрипта. Может быть полезно для извлечения конкретного скрипта из QWebEngineScriptCollection.

См. также setName(), QWebEngineScriptCollection::findScript() и QWebEngineScriptCollection::findScripts().

bool QWebEngineScript::runsOnSubFrames() const

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

См. также setRunsOnSubFrames().

void QWebEngineScript::setInjectionPoint(QWebEngineScript::InjectionPoint p)

Устанавливает момент выполнения скрипта в p.

См. также injectionPoint() и InjectionPoint.

void QWebEngineScript::setName(const QString &scriptName)

Устанавливает имя скрипта в scriptName.

См. также name().

void QWebEngineScript::setRunsOnSubFrames(bool on)

Выполняет скрипт на подкадрах помимо основного кадра, если on возвращает true.

См. также runsOnSubFrames().

void QWebEngineScript::setSourceCode(const QString &scriptSource)

Устанавливает исходный код скрипта на scriptSource.

См. также sourceCode().

void QWebEngineScript::setWorldId(quint32 id)

Устанавливает идентификатор мира изолированного мира на id при выполнении этого скрипта.

Должно быть между 0 и 256.

См. также worldId().

QString QWebEngineScript::sourceCode() const

Возвращает исходный код скрипта.

См. также setSourceCode().

void QWebEngineScript::swap(QWebEngineScript &other)

Меняет содержимое скрипта с содержимым other.

quint32 QWebEngineScript::worldId() const

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

См. также setWorldId().

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

Возвращает true, если скрипт не равен other, в противном случае возвращает false.

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

Присваивает other скрипту.

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

Возвращает true, если скрипт равен other, в противном случае возвращает false.

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

Spec-Zone.ru

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