万能地址栏
使扩展能够在用户在浏览器的地址栏中输入时实现自定义行为。
当用户将焦点放在浏览器的地址栏并开始输入时,浏览器会显示一个下拉列表,其中包含根据用户输入的建议页面。这为用户提供了一种快速访问例如历史记录或书签中页面的方法。
万能地址栏 API 提供了一种方式,使扩展可以自定义在下拉列表中显示的建议,当用户输入由扩展定义的关键词时。它的工作原理如下:
- 首先,扩展必须在 manifest.json 文件中包含一个 "omnibox" 键,它定义一个关键词。
- 当用户将焦点放在地址栏并输入关键词后跟一个空格时,扩展会收到一个
omnibox.onInputStarted
事件。 - 可选地,扩展可以调用
omnibox.setDefaultSuggestion()
来定义在地址栏下拉列表中显示的第一个建议。 - 当用户继续输入字符时,扩展会收到
omnibox.onInputChanged
事件。事件监听器会接收到用户输入的值,并且可以填充地址栏下拉列表中的建议。如果扩展使用omnibox.setDefaultSuggestion()
设置了默认建议,则此建议将首先在下拉列表中显示。 - 如果用户接受了建议,扩展会收到一个
omnibox.onInputEntered
事件。事件监听器会接收到接受的建议。 - 如果用户删除了建议,扩展会收到一个
omnibox.onDeleteSuggestion
事件。 - 如果用户关闭了下拉列表,扩展会收到一个
omnibox.onInputCancelled
事件。
类型
omnibox.OnInputEnteredDisposition
-
描述处理选定建议的推荐方法:在当前标签页中打开、在新前台标签页中打开或在新后台标签页中打开。
omnibox.SuggestResult
-
一个表示要添加到地址栏下拉列表中的建议的对象。
函数
omnibox.setDefaultSuggestion()
-
定义当用户输入扩展的关键词后跟一个空格时,在下拉列表中显示的第一个建议。
事件
omnibox.onDeleteSuggestion
-
在用户删除建议时触发。
omnibox.onInputStarted
-
当用户将焦点放在地址栏并输入扩展的万能地址栏关键词后跟一个空格时触发。
omnibox.onInputChanged
-
在用户在将焦点放在地址栏并输入扩展的关键词后跟一个空格后,其输入发生更改时触发。
omnibox.onInputEntered
-
当用户接受了扩展的建议之一时触发。
omnibox.onInputCancelled
-
在用户在将焦点放在地址栏并输入扩展的关键词后跟一个空格后,关闭了地址栏下拉列表时触发。
示例扩展
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。
注意:此 API 基于 Chromium 的 chrome.omnibox
API。