1

我正在尝试制作 Chrome 扩展程序。我的目标是做到以下几点:

  1. 在单击具有特定 ID 的按钮或链接时运行某个 javascript。
  2. 该按钮或带有特定 ID 的链接可以在任何网站上。

我的代码看起来很简单,但我不确定我错过了哪里。jquery 不会在 chrome 扩展中以这种方式工作吗?纯javascript中是否有任何等效代码?

清单.json

{
  "name": "Handle a button click",
  "version": "1.1",
  "background": { "scripts": ["background.js"] },
  "permissions": [
    "tabs"
  ],
  "browser_action": {
      "name": "click to handle"
  },
  "content_scripts": [
    {
      "matches": ["<all_urls>"],
      "js": ["jquery-1.9.0.min.js"]
    }
  ],
  "manifest_version": 2
}

背景.js

$(document).ready(function(){
    $("#my_submit").click(function(){
        alert("yo");
    });
}

谢谢你

更新 background.js 调试后我看到“未捕获的 ReferenceError:$ 未定义”,jQuery 文件没有被包含?或者为什么?

4

1 回答 1

1

尝试这个:

$(document).ready(function(){
  $(document).click(function(event){
    if(event.target.id == "my_submit"){    
        alert("yo");
    }
    });
});

如果触发点击事件的元素具有 id my_submit,这将检查所有点击事件,如果是,则提醒

jsfiddle

于 2013-01-17T12:36:19.330 回答