vainquit 2018-05-11 04:14 采纳率: 100%
浏览 3224
已采纳

为什么我适用chrome.tabs.executeScript没有反应

我要实现这样一个功能:打开一个新tab时,如果浏览器已经存在百度网站的tab,那么就在这个百度tab里注入一段代码(为了测试方便,这里就用alert语句)。
这里tb[0].id自然就是那个被抓取到的百度tab的ID,经单独测试没有错误,是有数值的。但是后面那个code就一直执行不了,换成file也不行,不知道什么原因,请求大神解答

chrome.tabs.onCreated.addListener(function(tab) {

chrome.tabs.query({url:"https://www.baidu.com/"},function(tb){

chrome.tabs.executeScript(tb[0].id,{code:"window.alert(11)"},null);
});

});


json文件:

{

"manifest_version": 2,
"name": "demo",
"version": "1.0.0",
"description": "简单的Chrome扩展demo",
 "permissions": ["storage","tabs","activeTab"],

 "background":
{
    "scripts": ["background.js"],
    "persistent": false
}

}

  • 写回答

1条回答

  • Go 旅城通票 2018-05-11 04:47
    关注

    权限问题,要有跨域访问页面的权限,加上https://*/*,注意协议。。如果是http要一起加上

     "permissions": ["storage","tabs","activeTab","https://*/*"],
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败