javascript - Chrome 扩展 : how to bind/hook to the browser's "search invoked" event?

标签 javascript google-chrome-extension

我正在开发 Chrome 扩展程序,我想扩展(但不是覆盖)浏览器的搜索(ctrl-F 或 cmd-F)功能。

有什么方法可以让我的扩展程序在调用浏览器的搜索功能时收到一条消息以及输入的搜索词。

(搜索框 UI 是 HTML 格式的吗?如果是,是否有访问它的方法,以便我可以绑定(bind)到搜索输入元素上的按键/按键事件?)

最佳答案

到目前为止,您无法访问标准 Chrome 查找对话框在调用浏览器的搜索功能时接收消息在中呈现搜索框 UI HTML?

(通过 Ctrl + FCmd + F 触发)。

但是,您可以使用 window.find() 1.

变通

此解决方法将覆盖,因为直到日期无法扩展

使用 chrome.commands 定义您自己的命令接口(interface)

"commands":{
    "sample":{
        "suggested_key" : {
            "default":"Ctrl+F",
            "windows":"Ctrl+F"
        },
        "description":"Thisismycustomkeyforchromeextension"
    },
}

并为您的命令添加监听器 Ctrl + FCmd + F

chrome.commands.onCommand.addListener(function (command) {

    //Do what ever you want here
})

这将覆盖标准 Ctrl + FCmd + F 并使用您自己的 content script构建所有 UI 和功能逻辑,以抓取相关内容的页面。

1: window.find() 范围仅落在选定的文本中

引用资料

关于javascript - Chrome 扩展 : how to bind/hook to the browser's "search invoked" event?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14529486/

相关文章:

javascript - popup.js 未在 Chrome 扩展中的 popup.html 的 head 标记内执行

javascript - 递归更新一个值到顶部的方法

javascript - React.useContext() 不断返回未定义?

javascript - 调试 javascript,同时检查 html 和 css 的变化

javascript - 将鼠标悬停在表格行上

javascript - 如何防止在我的 Chrome 扩展程序中放大弹出窗口

javascript - 从 select ng-options 获取其他列

javascript - Chrome 丰富通知未显示

javascript - Canvas 未完全覆盖 Chrome 扩展中的网页

html - Font Awesome 图标不适用于 Chrome 应用程序