このページでは

webEngineScript QML Value Type

JavaScriptエンジンでスクリプトのプログラムインジェクションを有効にする。詳細...

Import Statement: import QtWebEngine
Since: QtWebEngine 1.1
In C++: QWebEngineScript

プロパティ

詳しい説明

webEngineScript 値型は、ウェブコンテンツの読み込み中に、injectionPoint によって決定されるさまざまな時点で、JavaScript エンジンにユーザースクリプトと呼ばれるものをプログラム的に注入することを可能にします。

スクリプトは、ウェブコンテンツから来る JavaScript の残りの部分と一緒に、メインの JavaScript の世界で実行することも、独自の分離された世界で実行することもできます。ページの DOM にはどのワールドからもアクセスできますが、あるワールドで定義された関数の JavaScript 変数には、別のワールドからはアクセスできません。worldId プロパティは、この目的のためにいくつかの定義済み ID を提供します。

以下のGreasemonkey属性がサポートされています:@exclude @include,@name,@match, および@run-at

ウェブビューに接続されたスクリプトのリストにアクセスするには、WebEngineScriptCollection を使用します。

プロパティのドキュメント

injectionPoint : enumeration

スクリプトが実行されるロードプロセスのポイント。デフォルト値はDeferred です。

定数説明
WebEngineScript.DocumentCreationスクリプトは、ドキュメントが作成されるとすぐに実行されます。これは DOM 操作には適しません。
WebEngineScript.DocumentReadyスクリプトは DOM の準備ができ次第実行されます。これは JavaScript のDOMContentLoaded イベントと同じです。
WebEngineScript.Deferredスクリプトは、ページ読み込みが終了するか、ドキュメントが準備できてから500ミリ秒後のどちらか早い時点で実行されます。

name : string

スクリプトの名前。WebEngineScriptCollection.find メソッドから特定のスクリプトを取り出すのに便利です。

runsOnSubFrames : bool

スクリプトがページ内のすべてのフレームで実行される場合はこのプロパティをtrue に設定し、メインフレームでのみ実行される場合はfalse に設定します。デフォルト値はfalse です。

sourceCode : string

このプロパティは、ユーザースクリプトのJavaScriptソースコードを保持します。

sourceUrlも参照してください

sourceUrl : url

このプロパティは、ユーザースクリプトのリモートソースの場所を保持する。

このプロパティは、sourceCode とは異なり、ディスクに保存されている場合など、メモリにロードされていないユーザー スクリプトを参照できます。

このプロパティを設定すると、スクリプトのsourceCode が変更される。

注意: 現時点では、ファイルベースのソースにのみ対応しています。

sourceCodeも参照してください

worldId : enumeration

スクリプトがどの隔離された世界で実行されるかを定義するワールドID。

定数説明
WebEngineScript.MainWorldページのウェブコンテンツによって使用されるワールド。特定のシナリオにおいて、ウェブコンテンツにカスタム機能を公開するために役立ちます。
WebEngineScript.ApplicationWorldJavaScriptで実装されたアプリケーションレベルの機能に使用されるデフォルトの隔離された世界。
WebEngineScript.UserWorldアプリケーションがより多くのワールドを使用しない場合、ユーザーによって設定されたスクリプトによって使用される最初の隔離されたワールドです。経験則として、もしその機能がアプリケーションのユーザーに公開されるのであれば、個々のスクリプトはそれ自身の隔離された世界を持つべきでしょう。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.