Limited support 一部のブラウザのみ対応。使用時はサポート状況を確認すること。

対応ブラウザ

機能 デスクトップ モバイル
Chrome
Edge
Firefox
Safari
Chrome Android
Safari iOS
121
121
26.2
121
26.2
DOM API
prerendering
実験的

prerendering は Document インターフェイスの読み取り専用プロパティで、この文書が現在投機ルール API によって開始された事前レンダリングの過程にある場合に true を返します。

108
108
108

prerenderingchange イベントは、事前レンダリングされた文書がアクティブになった(ユーザーがページを閲覧した)ときに発生します。

108
108
108

activationStart は読み取り専用プロパティで、文書がプリレンダリングを開始してからアクティブになるまでの時間を表します。

108
108
57
destination (speculationrules)
実験的

speculationrules`の値

121
121
26.2
121
26.2
その他

speculationrules の値を 要素の type 属性に設定すると、要素の本体に投機ルールが入っていることを示します。

109
109
26.2
109
26.2

次の一連の文書ルールは、 eagerness を使用して、一致するリンクのセットごとにブラウザーが事前レンダリングを行うべきであることを示しています。

121
121
26.2
121
26.2

expects_no_vary_search`キー

127
127
127

プリフェッチ`キー

110
110
26.2
103
26.2

prerender`キー

105
105
103

referrer_policy`キー

111
111
26.2
111
26.2

relative_to`キー

121
121
26.2
121
26.2

requires`キー

110
110
103

anonymous-client-ip-when-cross-origin`値

110
103

source`キーは任意である。

122
122
26.2
122
26.2

タグ`キー

136
136
26.2
136
26.2

target_hint`キー

138
138
138

urls`キー

109
109
26.2
103
26.2

ドキュメントソースルールには "where" プロパティが含まれ、これは文書内のどのリンクが一致するかを定義する基準を含むオブジェクトです。実際には、 "where" オブジェクトは、推測ルールが適用されるかどうかを確認するためにページ上のすべてのリンクに対して実行されるテストを表します。

121
121
26.2
121
26.2
http.headers.Content-Security-Policy.script-src.inline-speculation-rules
実験的

インライン・スペキュレーション・ルール `inline-speculation-rules` ソース表現

110
110
26.2
110
26.2
http.headers.Sec-Purpose.speculationrules
実験的

<スクリプトタイプ="speculationrules">`のプリフェッチのための`Sec-Purpose`。

110
110
26.2
110
26.2

HTTP Sec-Speculation-Tagsリクエストヘッダは、推測の原因となった推測ルールの 1つ以上のタグ値を含む。これによりサーバーは、どのルールが推測を引き起こしたかを特定し、潜在的にブロックすることができる。

136
136
26.2
136
26.2

HTTP Supports-Loading-Mode 応答ヘッダーを使用すると、応答は、そうでなければロードに失敗する新規の高リスク コンテキストにロードされることをオプトインできます。

109
109
109
http.headers.Supports-Loading-Mode.credentialed-prerender
実験的

credentialed-prerender`ディレクティブ

109
109
109
http.headers.Supports-Loading-Mode.fenced-frame
実験的

fenced-frame` ディレクティブ

117
117
117
1+対応 (バージョン) 未対応 注釈あり サブ機能の解説は MDN Web Docs (CC BY-SA 2.5)
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (109)
実装メモ
  • 当初のサポートは、同一オリジンのプリレンダリングのみだった。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (109)
実装メモ
  • 当初のサポートは、同一オリジンのプリレンダリングのみだった。
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (109)
実装メモ
  • 当初のサポートは、同一オリジンのプリレンダリングのみだった。
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
実装メモ
  • 文書ルールでは `conservative` のみがサポートされる(ただし `moderate` は自動的に `conservative` に戻る)。リストルールでは `eager` と `immediate` のみがサポートされる。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
実装メモ
  • 文書ルールでは `conservative` のみがサポートされる(ただし `moderate` は自動的に `conservative` に戻る)。リストルールでは `eager` と `immediate` のみがサポートされる。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (127)
実装メモ
  • プリフェッチ`のみサポート。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (127)
実装メモ
  • プリフェッチ`のみサポート。
注釈 3件
制限事項
  • このブラウザでは部分的にしか実装されていません
削除済み
  • このバージョンで機能が削除されました (127)
実装メモ
  • プリフェッチ`のみサポート。
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 2件
制限事項
  • このブラウザでは部分的にしか実装されていません
実装メモ
  • サポートしているのは`"_blank"`と`"_self"`のみで、プリフェッチのみである。
注釈 2件
制限事項
  • このブラウザでは部分的にしか実装されていません
実装メモ
  • サポートしているのは`"_blank"`と`"_self"`のみで、プリフェッチのみである。
注釈 2件
制限事項
  • このブラウザでは部分的にしか実装されていません
実装メモ
  • サポートしているのは`"_blank"`と`"_self"`のみで、プリフェッチのみである。
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります
注釈 1件
実験的機能
  • ブラウザの実験的フラグを有効にする必要があります

基本構文

HTML
<script type="speculationrules">
{
  "prerender": [{ "where": { "href_matches": "/articles/*" } }],
  "prefetch": [{ "urls": ["/next-page"] }]
}
</script>

ライブデモ

Speculation strategy

Show how rules can tell the browser which navigations are good candidates for prefetch or prerender.

プレビュー全画面表示

Where it helps

Speculation rules work best on predictable navigation paths such as search results or article lists.

プレビュー全画面表示

Guardrails

Speculative loading consumes bandwidth and memory, so use it selectively.

プレビュー全画面表示

実務での使いどころ

  • Speculation rules の活用

    Experimental: これは実験的な機能です。

注意点

  • 一部のブラウザでのみ対応。使用前にブラウザサポートを確認すること。

アクセシビリティ

  • スクリーンリーダーでの読み上げを確認すること。