javascript - 如何在 Chrome 扩展程序中运行导航事件的回调?

标签 javascript google-chrome-extension

我试图让每次用户导航到新 URL 时执行一个函数,但我无法让 webNavigation 为我工作。这是我到目前为止正在尝试的:

manifest.json:

{
  "manifest_version": 2,

  "name": "My Extension name",
  "description": "My Extension description",
  "version": "1.0",

  "background": {
    "scripts": ["background.js"]
  },
  "permissions": ["webNavigation"]
}

背景.js:

chrome.webNavigation.onBeforeNavigate = function () {
    alert(123);
}

我在警报线上的断点似乎从未命中。我究竟做错了什么?或者是否有另一种方法可以在用户每次导航到新页面时获取事件?

最佳答案

chrome.webNavigation.onBeforeNavigate是 Chrome Event object .

要注册监听器,需要调用addListener:

chrome.webNavigation.onBeforeNavigate.addListener(handler);

function handler(details) {
  alert(123);
}

此外,看看event filters .

关于javascript - 如何在 Chrome 扩展程序中运行导航事件的回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27306514/

相关文章:

google-chrome-extension - 如何在 Firefox 插件中实现 Chrome 扩展的 chrome.tabs.sendMessage API

javascript - 在 Chrome 扩展中抓取 DOM 值

javascript - 使用原始 XMLHttpRequest 批量删除 Google Drive 上的文件

javascript - 将 npm 模块与 ES6 和 npm/bundlers 的 future 结合使用

javascript - 脚本不会在 WordPress 页脚中加载

javascript 基本 slider 不会工作

javascript - 如何检查点是否在 Javascript 中的多边形中

javascript - ReactJs 中的动态表格组件

javascript - 单个函数调用 chrome.runtime.sendMessage() 中的多条消息;

google-chrome - 修改Chrome扩展程序中的网址位置并停止初始请求