javascript – 如何:动态加载google ajax api到chrome扩展内容脚本

我正试图在chorme扩展的“内容脚本”中使用谷歌的ajax apis.在常规的html页面上,我会这样做:

<script src="http://www.google.com/jsapi"></script>
<script>
  google.load("language", "1");
</script> 

但是因为我试图从js代码动态加载转换库,所以我尝试过:

script = document.createElement("script");  
script.src = "http://www.google.com/jsapi";  
script.type = "text/javascript";  
document.getElementsByTagName("head")[0].appendChild(script); 
google.load('language','1')

但最后一行引发以下错误:

Uncaught TypeError: Object #<an Object> has no method 'load'

有趣的是,当我在chrome的js控制台中输入相同的“google.load(‘language’,’1′)”时,它按预期工作…

我也尝试过使用jquery的.getScript()但同样的问题仍然存在……

有没有人知道可能是什么问题以及如何解决?

提前谢谢了!

最佳答案 我有这样的工作:

<script type="text/javascript">
    var headID = document.getElementsByTagName("head")[0];
    var newScript = document.createElement('script');
    newScript.type = 'text/javascript';
    newScript.src = 'http://www.google.com/jsapi';
    headID.appendChild(newScript);
</script>
<script type="text/javascript">
    google.load("language", "1");
</script>

它没有返回任何错误.

点赞