Тип QML WebEngineScript
Позволяет программно встраивать скрипты в движок JavaScript. Подробнее...
| Оператор импорта: | import QtWebEngine 1.7 |
| С момента: | QtWebEngine 1.1 |
| Создаёт экземпляр: | QQuickWebEngineScript |
Свойства
- injectionPoint : перечисление
- name : строка
- runOnSubframes : целое число
- sourceCode : строка
- sourceUrl : url
- worldId : перечисление
Подробное описание
Тип WebEngineScript позволяет программно встраивать так называемые пользовательские скрипты в движок JavaScript в различные точки, определяемые свойством injectionPoint, во время загрузки веб-содержимого.
Скрипты могут выполняться либо в основном мире JavaScript, вместе со всем остальным JavaScript, поступающим из веб-содержимого, либо в изолированном мире. Хотя DOM страницы можно получить из любого мира, переменные JavaScript функции, определённой в одном мире, недоступны из другого. Свойство worldId предоставляет некоторые предопределённые идентификаторы для этой цели.
Поддерживаются следующие атрибуты Greasemonkey начиная с Qt 5.8: @exclude, @include, @name, @match, и @run-at.
Используйте WebEngineView.userScripts для доступа к списку скриптов, прикреплённых к просмотру веб-страниц.
Документация по свойствам
injectionPoint : перечисление
Точка в процессе загрузки, в которой будет выполняться скрипт. Значение по умолчанию — Deferred.
| Константа | Описание |
|---|---|
WebEngineScript.DocumentCreation |
Скрипт будет выполнен как только документ будет создан. Это не подходит для любых операций с DOM. |
WebEngineScript.DocumentReady |
Скрипт выполнится как только DOM будет готов. Это эквивалентно срабатыванию события DOMContentLoaded в JavaScript. |
WebEngineScript.Deferred |
Скрипт выполнится при завершении загрузки страницы или через 500 мс после готовности документа, в зависимости от того, что произойдёт раньше. |
name : строка
Имя скрипта. Может быть полезно для извлечения определённого скрипта из WebEngineView.userScripts.
runOnSubframes : целое число
Установите это свойство в true, если скрипт выполняется на каждой вкладке страницы, или в false, если он выполняется только для основной вкладки. Значение по умолчанию — false.
sourceCode : строка
Это свойство содержит исходный код JavaScript пользовательского скрипта.
См. также sourceUrl.
sourceUrl : url
Это свойство содержит удалённое местоположение источника пользовательского скрипта (если таковое имеется).
В отличие от sourceCode, это свойство позволяет ссылаться на пользовательские скрипты, которые ещё не загружены в память, например, хранящиеся на диске.
Установка этого свойства изменит sourceCode скрипта.
Примечание: В настоящее время поддерживаются только источники на основе файлов.
См. также sourceCode.
worldId : перечисление
Идентификатор мира, определяющий, в каком изолированном мире выполняется скрипт.
| Константа | Описание |
|---|---|
WebEngineScript.MainWorld |
Мир, используемый веб-содержимым страницы. Это может быть полезно для экспонирования пользовательских функций для веб-содержимого в определённых сценариях. |
WebEngineScript.ApplicationWorld |
Изолированный мир по умолчанию, используемый для функциональности на уровне приложения, реализованной в JavaScript. |
WebEngineScript.UserWorld |
Первый изолированный мир, который будет использоваться скриптами, установленными пользователями, если приложение не использует больше миров. Как правило, если эта функциональность доступна пользователям приложения, каждый отдельный скрипт, вероятно, должен получить свой собственный изолированный мир. |
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qml-qtwebengine-webenginescript.html