我的铬扩展是识别特定选项卡的URL,然后,在图标点击,它修改该活动选项卡的内容。我想从某种程度上评估它的使用情况。这是扩展的逻辑:
- manifest.json [injecting jquery & jquery plugin]
- background.js [ on extension's icon click, it executes content_script.js and tracking.js]
- icon
- content_script.js [ it modifies page content ]
- tracking.js (GA code, as provided by google Analytics then modified according to https://davidsimpson.me/2014/05/27/add-googles-universal-analytics-tracking-chrome-extension/ );我想看看点击了多少次扩展按钮。我尝试向manifest.json添加适当的权限:
"content_security_policy": "script-src 'self' https://www.google-analytics.com; object-src 'self'"并将分析代码添加到单独的.js文件(tracking.js)中,并在单击扩展名的图标时执行它,如下所示:
chrome.browserAction.onCLicked.addListener(
function(tab) {
chrome.tabs.executeScript(null, {file:
"content_script.js"});
chrome.tabs.executeScript(null, {file:
"tracking.js"});
});。。这是行不通的,因为告诉我“跟踪没有安装”,我想不出另一种方式来添加它。
我怎样才能看到这个分机的用法?
发布于 2015-04-25 13:46:29
您要做的是将跟踪作为内容脚本注入到选项卡中。
跟踪是通过在页面中添加另一个<script>标记来工作的,该标记将它从内容脚本的孤立上下文中踢出并放入页面的上下文中。这就是为什么您的脚本无法看到启用的跟踪(您可能也只是破坏了页面本身的跟踪)。
您需要在后台页面中安装跟踪代码并从那里发送事件。要做到这一点,只需将tracking.js包含到后台脚本列表中;然后,以通常的GA方式发送事件。
https://stackoverflow.com/questions/29865334
复制相似问题