我正在编写一个谷歌浏览器扩展,它可以操纵当前页面(基本上是添加一个按钮)。在google chrome扩展中加载外部javascript
在我的内容脚本,我要加载Facebook的图形API:
$fbDiv = $(document.createElement('div')).attr('id', 'fb-root');
$fbScript = $(document.createElement('script')).attr('src', 'https://connect.facebook.net/en_US/all.js');
$(body).append($fbDiv);
$(body).append($fbScript);
console.log("fbScript: " + typeof $fbScript.get(0));
console.log("fbScript parent: " + typeof $fbScript.parent().get(0));
console.log("find through body: " + typeof $(body).find($fbScript.get(0)).get(0));
然而,剧本似乎并没有加入到body
。这里的控制台日志:
fbScript: object
fbScript parent: undefined
find through body: undefined
任何想法我做错了什么?
是有一些原因,你不能只包括Facebook的JS为您的内容脚本之一? – sdleihssirhc
我试过,但我甚至无法在扩展窗口中加载脚本。它出现了这个错误:无法从'/Users/.../extentionfolder/'加载扩展。无法为内容脚本加载JavaScript'https://connect.facebook.net/en_US/all.js'。 – Gezim
这是因为您提供了外部参考,但Chrome期望脚本是本地的。我对Facebook Graph API不太熟悉;用您的扩展名保存本地副本有多可行? – sdleihssirhc