内容表

上一话题

QWebEngineProfile

下一话题

QWebEngineScriptCollection

QWebEngineScript

QWebEngineScript class encapsulates a JavaScript program. 更多

Inheritance diagram of PySide2.QtWebEngineWidgets.QWebEngineScript

概要

函数

详细描述

QWebEngineScript enables the programmatic injection of so called 用户脚本 在 JavaScript 引擎中的不同点,确定通过 injectionPoint() , during the loading of web contents.

脚本可以执行于主 JavaScript world ,来自 web 内容的其它 JavaScript,或在它们自己的独立世界。虽然页面的 DOM 可以被访问从任何世界,但在某一世界中定义的 JavaScript 函数变量是不能从另一世界访问的。 ScriptWorldId 为此目的提供了一些预定义 ID。

下列 Greasemonkey 属性从 Qt 5.8 起支持: @exclude , @include , @name , @match ,和 @run-at .

使用 scripts() and scripts() to access the collection of scripts associated with a single page or a number of pages sharing the same profile.

另请参阅

脚本注入

class QWebEngineScript

QWebEngineScript(other)

param other

QWebEngineScript

构造 null 脚本。

PySide2.QtWebEngineWidgets.QWebEngineScript. InjectionPoint

此枚举描述脚本注入的时间:

常量

描述

QWebEngineScript.DocumentCreation

文档被创建后尽快执行脚本。这不适合任何 DOM 操作。

QWebEngineScript.DocumentReady

DOM 就绪后尽快运行脚本。这相当于 DOMContentLoaded 事件激发于 JavaScript 中。

QWebEngineScript.Deferred

当页面加载完成时,或文档就绪后 500 毫秒 (以先到的为准) 运行脚本。

PySide2.QtWebEngineWidgets.QWebEngineScript. ScriptWorldId

此枚举提供预定义世界 ID,用于把用户脚本隔离到不同世界中:

常量

描述

QWebEngineScript.MainWorld

The world used by the page’s web contents. It can be useful in order to expose custom functionality to web contents in certain scenarios.

QWebEngineScript.ApplicationWorld

用于应用程序级 JavaScript 功能实现的默认隔离世界。

QWebEngineScript.UserWorld

由用户设置的脚本使用的第一隔离世界若应用程序不使用更多世界。根据经验,若将该功能暴露给应用程序用户,每个单独脚本应该都可能有其自己的隔离世界。

PySide2.QtWebEngineWidgets.QWebEngineScript. injectionPoint ( )
返回类型

InjectionPoint

返回加载过程中脚本将要执行的位置。默认值为 Deferred .

PySide2.QtWebEngineWidgets.QWebEngineScript. isNull ( )
返回类型

bool

返回 true 若脚本为 null;否则返回 false .

PySide2.QtWebEngineWidgets.QWebEngineScript. name ( )
返回类型

unicode

返回脚本的名称。可能是有用的,对检索特定脚本从 QWebEngineScriptCollection .

PySide2.QtWebEngineWidgets.QWebEngineScript. __ne__ ( other )
参数

other QWebEngineScript

返回类型

bool

返回 true 若脚本不等于 other ,否则返回 false .

PySide2.QtWebEngineWidgets.QWebEngineScript. __eq__ ( other )
参数

other QWebEngineScript

返回类型

bool

返回 true 若脚本等于 other ,否则返回 false .

PySide2.QtWebEngineWidgets.QWebEngineScript. runsOnSubFrames ( )
返回类型

bool

返回 true 若脚本在页面每框架中执行,或 false 若它只运行于主框架。

PySide2.QtWebEngineWidgets.QWebEngineScript. setInjectionPoint ( arg__1 )
参数

arg__1 InjectionPoint

把执行脚本的点设为 p .

另请参阅

injectionPoint() InjectionPoint

PySide2.QtWebEngineWidgets.QWebEngineScript. setName ( arg__1 )
参数

arg__1 – unicode

把脚本名称设为 scriptName .

另请参阅

name()

PySide2.QtWebEngineWidgets.QWebEngineScript. setRunsOnSubFrames ( on )
参数

on bool

在除主框架外的子框架中执行脚本若 on 返回 true .

另请参阅

runsOnSubFrames()

PySide2.QtWebEngineWidgets.QWebEngineScript. setSourceCode ( arg__1 )
参数

arg__1 – unicode

把脚本源设为 scriptSource .

另请参阅

sourceCode()

PySide2.QtWebEngineWidgets.QWebEngineScript. setWorldId ( arg__1 )
参数

arg__1 quint32

把隔离世界的世界 ID 设为 id 当运行此脚本时。

必须介于 0 and 256 .

另请参阅

worldId()

PySide2.QtWebEngineWidgets.QWebEngineScript. sourceCode ( )
返回类型

unicode

返回脚本的源。

另请参阅

setSourceCode()

PySide2.QtWebEngineWidgets.QWebEngineScript. swap ( other )
参数

other QWebEngineScript

交换脚本的内容与内容为 other .

PySide2.QtWebEngineWidgets.QWebEngineScript. worldId ( )
返回类型

quint32

返回定义脚本在哪个世界中执行的世界 ID。

另请参阅

setWorldId()