87,995
社区成员
发帖
与我相关
我的任务
分享
[/quote]
嘿嘿,用点小技巧吧!executeScript的函数,第一个参数传的是tab.id,如果是null的话,应该是当前页面的样子。第二个参数是要注入的js文件(用{file:“sample.js”}对象表示)。
先得在manifest里面获取注入这个页面的权限,(简单起见,我直接在permission里面添加http://*/),然后在扩展程序管理界面 检查视图: _generated_background_page.html打开后台的console,通过执行两行代码:
chrome.tabs.query({active:true},function(tabs){alert(tabs[0].id);});
chrome.tabs.executeScript(11,{file:"sample.js"});
第一行会返回你当前显示页面的tab.id,我看到的是11,所以第二行的时候,把第一个参数改成11,在sample里面设个alert,然后就发现可以成功地alert了,说明sample.js被成功地导入了!
另外由于http://*/并没有获取到chrome://devtool的权限,所以你在做这个测试的时候,务必记得把当前标签页换成别的,比如百度!我之前就是因为直接在扩展程序管理界面做测试,然后报错说无法获取权限。



"background": { "scripts": ["jquery.min.js", "background.js"] },