拡張機能では HTML オーバーライド ページを使用して、Google Chrome で通常提供されるページを置き換えることができます。拡張機能では、以下のどのページもオーバーライドを設定できますが、各拡張機能でオーバーライドできるのは 1 ページのみです。
- ブックマーク マネージャー
- ユーザーがブックマーク マネージャーのメニュー項目を選択したときに表示されるページ Chrome メニュー、または Mac の場合は [ブックマーク マネージャ] メニューの [ブックマーク マネージャ] をクリックします。また、 このページにアクセスするには、URL「chrome://bookmarks」を入力します。
- 履歴
- ユーザーが Chrome で [履歴] メニュー項目を選択したときに表示されるページ Mac の場合は [履歴] メニューの [全履歴を表示] を選択します。このページには 「chrome://history」という URL を入力します。
- 新しいタブ
- ユーザーが新しいタブやウィンドウを作成するときに表示されるページ。また、 「chrome://newtab」と入力します。
次のスクリーンショットは、デフォルトの新しいタブページとカスタムの新しいタブページです。
<ph type="x-smartling-placeholder">![デフォルトの新しいタブページ](https://developer.chrome.google.cn/static/docs/extensions/develop/ui/override-chrome-pages/image/the-default-tab-page-059d30739112b.png?authuser=0000&hl=ja)
![カスタムの新しいタブページ](https://developer.chrome.google.cn/static/docs/extensions/develop/ui/override-chrome-pages/image/a-custom-tab-page-d2b577b11a104.png?authuser=0000&hl=ja)
これを試すには、オーバーライドのサンプルをご覧ください。
シークレット ウィンドウの動作
シークレット ウィンドウでは、拡張機能で新しいタブページをオーバーライドすることはできません。シークレット マニフェスト プロパティが次のように設定されている場合、他のページは引き続き機能します。 「spanning」に設定(デフォルト値)。シークレット ウィンドウの処理方法について詳しくは、データの保存とシークレット モードをご覧ください。
マニフェスト
拡張機能のマニフェストでオーバーライド ページを登録するには、次のコードを使用します。
{
"manifest_version": 3,
"name": "My extension",
...
"chrome_url_overrides" : {
"PAGE_TO_OVERRIDE": "myPage.html"
},
...
}
PAGE_TO_OVERRIDE
は、次のいずれかに置き換えます。
"bookmarks"
"history"
"newtab"
ベスト プラクティス
ページを小さくして短くする。
ユーザーは、組み込みのブラウザページが瞬時に開くことを期待しています。時間がかかる操作を避ける あります。特に、データベース リソースに同期的にアクセスすることは避けてください。ネットワーク リクエストを行う場合は、XMLHttpRequest()
よりもfetch()
を優先します。ユーザーの混乱を避けるため、ページにタイトルを付けてください。
タイトルを指定しない場合、ページタイトルはデフォルトで URL に設定されます。HTML ファイルで<title>
タグを使用してタイトルを指定します。新しいタブでは、最初にキーボードのフォーカスがアドレスバーに表示されます。
キーボード フォーカスをデフォルトでページの他の部分に任せないでください。新しいタブページをカスタマイズする。
Chrome のデフォルトの新しいタブページとユーザーが混同する可能性がある、新しいタブページを作成しないでください。
例
オーバーライドのサンプルをご覧ください。