WebEngineScript QML 类型
允许程序性地在 JavaScript 引擎中注入脚本。 更多信息...
导入语句 | import QtWebEngine |
自 | QtWebEngine 1.1 |
实例化 | QWebEngineScript |
属性
- injectionPoint : 枚举
- name : 字符串
- runOnSubframes : 整数
- sourceCode : 字符串
- sourceUrl : url
- worldId : 枚举
详细描述
WebEngineScript 类型允许在加载网页内容时的不同点(由 injectionPoint 确定)程序化地注入所谓的 用户脚本。
这些脚本可以在主 JavaScript 世界 中执行,与来自网页内容的其余 JavaScript 一起,或者在自己的独立世界中执行。虽然可以从任何世界访问页面 DOM,但定义在一个世界中的函数的 JavaScript 变量无法从另一个世界中访问。 worldId 属性为此目的提供了一些预定义的 ID。
支持以下 Greasemonkey 属性:@exclude
,@include
,@name
,@match
和 @run-at
。
使用 WebEngineScriptCollection 访问附加到网页视图的脚本列表。
属性文档
injectionPoint : 枚举 |
脚本将在加载过程中执行的位置。默认值是 Deferred
。
常量 | 描述 |
---|---|
WebEngineScript.DocumentCreation | 脚本将在文档创建后立即执行。这不适合任何 DOM 操作。 |
WebEngineScript.DocumentReady | 脚本将在 DOM 准备好后立即运行。这等价于在 JavaScript 中触发 DOMContentLoaded 事件。 |
WebEngineScript.Deferred | 脚本将在页面加载完成时运行,或文档准备好后 500 毫秒,哪个先到就先运行。 |
name : 字符串 |
脚本的名称。可以通过 WebEngineScriptCollection.find 方法从中检索特定的脚本。
runOnSubframes : 整数 |
将此属性设置为 true
如果脚本在页面上的每一帧都执行,或者设置为 false
如果它只为主框架执行。默认值是 false
。
sourceUrl : URL |
此属性持有用户脚本(如果有)的远程源位置。
与 sourceCode 不同,此属性允许引用尚未加载到内存中的用户脚本,例如,当存储在磁盘上时。
设置此属性将更改脚本的 sourceCode。
注意:目前,仅支持基于文件的资源。
另请参阅sourceCode。
worldId : 枚举 |
定义脚本在哪个隔离世界中执行的world ID。
常量 | 描述 |
---|---|
WebEngineScript.MainWorld | 由页面网页内容使用的world。在某些情况下,它可以用来公开自定义功能。 |
WebEngineScript.ApplicationWorld | 用于在JavaScript中实现应用程序级功能时默认使用的隔离world。 |
WebEngineScript.UserWorld | 如果应用程序未使用更多world,则脚本设置用户首次使用的孤立world。一般来说,如果该功能向应用程序用户提供,则每个独立脚本可能应该得到自己的孤立world。 |
© 2024 Qt公司有限公司。此处包含的文档贡献是该各自所有者的版权。此处提供的文档是根据自由软件基金会发布的 GNU自由文档许可证版本1.3 的条款许可的。Qt及其相关徽标是芬兰和/或其他国家的Qt公司有限公司的商标。所有其他商标均为其各自所有者的财产。