omnibox

使擴充套件能夠實現使用者在瀏覽器位址列輸入內容時的自定義行為。

當用戶聚焦瀏覽器位址列並開始輸入時,瀏覽器會顯示一個下拉列表,其中包含根據使用者輸入內容建議的頁面。這為使用者提供了一種快速訪問(例如,來自歷史記錄或書籤的頁面)的方式。

omnibox API 為擴充套件提供了一種自定義使用者輸入擴充套件定義的關鍵字時下拉列表中顯示的建議的方法。其工作原理如下:

  1. 首先,擴充套件必須在其 manifest.json 檔案中包含一個 "omnibox" 鍵,該鍵定義了一個關鍵字。
  2. 當用戶聚焦位址列並輸入關鍵字後跟一個空格時,擴充套件會收到一個 omnibox.onInputStarted 事件。
  3. 可選地,擴充套件可以呼叫 omnibox.setDefaultSuggestion() 來定義位址列下拉列表中顯示的第一個建議。
  4. 隨著使用者繼續輸入字元,擴充套件會收到 omnibox.onInputChanged 事件。事件監聽器會接收使用者輸入的文字,並可以用建議填充位址列下拉列表。如果擴充套件使用 omnibox.setDefaultSuggestion() 設定了預設建議,則該建議會首先顯示在下拉列表中。
  5. 如果使用者接受了某個建議,擴充套件會收到一個 omnibox.onInputEntered 事件。事件監聽器會接收被接受的建議。
  6. 如果使用者刪除了一個建議,擴充套件會收到一個 omnibox.onDeleteSuggestion 事件。
  7. 如果使用者關閉了下拉列表,擴充套件會收到一個 omnibox.onInputCancelled 事件。

型別

omnibox.OnInputEnteredDisposition

描述了處理選定建議的推薦方法:在當前標籤頁中開啟、在新前臺標籤頁中開啟或在新後臺標籤頁中開啟。

omnibox.SuggestResult

表示要新增到位址列下拉列表中的建議的物件。

函式

omnibox.setDefaultSuggestion()

定義當用戶輸入您的擴充套件的關鍵字後跟一個空格時,在下拉列表中顯示的第一個建議。

事件

omnibox.onDeleteSuggestion

當用戶刪除建議時觸發。

omnibox.onInputStarted

當用戶聚焦位址列並輸入您的擴充套件的 omnibox 關鍵字後跟一個空格時觸發。

omnibox.onInputChanged

當用戶聚焦位址列並輸入您的擴充套件的關鍵字後跟一個空格後,使用者的輸入發生變化時觸發。

omnibox.onInputEntered

當用戶接受您的擴充套件的建議之一時觸發。

omnibox.onInputCancelled

當用戶聚焦位址列並輸入您的擴充套件的關鍵字後跟一個空格後,關閉位址列下拉列表時觸發。

擴充套件程式示例

瀏覽器相容性

注意:此 API 基於 Chromium 的 chrome.omnibox API。