2

我正在尝试使用 Firefox 扩展程序让谷歌添加显示在我的页面中。我从中获取代码//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js并将其保存在本地文件中。

在我试图操作的页面上有一个类似于此的元素:

<ins xmlns="http://www.w3.org/1999/xhtml" class="adsbygoogle" style="display:inline-block;width:728px;height:90px;margin-top:10px" data-ad-client="ca-pub-XXX" data-ad-slot="XXX"></ins>

在我的index.js文件中,我有以下内容:

var tabs = require("sdk/tabs");
tabs.on('open', function(tab){
  var workerOpen = tab.attach({
    contentScriptFile: ["./js/addsbygoogle.js", "./js/content_script.js"]
  });
  workerOpen.port.emit('newTabOpened');
});

在我的content_script.js我有这个:

self.port.on('newTabOpened', function(){
    (adsbygoogle = window.adsbygoogle || []).push({});
})

我已在以下位置设置权限package.JSON

"permissions": {
      "cross-domain-content": ["*"]
  }

脚本加载并运行,但在我的浏览器控制台中,我得到:

XML Parsing Error: not well-formed
Location: 
Line Number 1, Column 1065:

in (unknown)- 这是发生错误的地方(发生错误的脚本名称,基本上是未知的)所以我无法调试这个 - 或者更好地说,我不知道该怎么做。

我相信正在发生的事情是,调用堆栈上的某个地方被 Firefox 误解了——而且只在扩展环境中。

有没有办法从 Firefox 扩展加载谷歌添加(adsense 广告)?我会以正确的方式解决这个问题吗?非常感谢任何帮助或想法!

4

0 回答 0