2013-01-13 76 views
1

我需要通过jquery append方法生成div,然后将Google +1徽章添加到此div的喜欢数量。在我发现的每个源代码中,这个div已经在html中生成,但我需要通过jquery动态生成它。通过javascript动态生成Google +1徽章

我试过这段代码(liveReady是jquery插件,它将文档就绪方法与jquery.live方法结合起来,.g-plusone是div,它是通过jquery append创建的。)。但功能$ .getScript与错误结束(遗漏的类型错误:无法读取属性“重定向”的未定义)

$('#lbExif').append('<div class="g-plusone"></div>');  
$.liveReady('.g-plusone',function addG(){ 
     $(".g-plusone").html("<g:plusone width=\"55\" height=\"20\" href=\"http://blog.2k1y.com\"></g:plusone>"); 
     $.getScript("https://apis.google.com/js/plusone.js"); 
    }); 

任何帮助将不胜感激。

回答

0

下面的代码将使用JavaScript动态异步无需等待网页加载完成生成按钮:

<script type="text/javascript"> 
    (function() { 
    var po = document.createElement('script'); 
    po.type = 'text/javascript'; 
    po.async = true; 

    po.src = 'https://apis.google.com/js/plusone.js'; 
    var s = document.getElementsByTagName('script')[0]; 
    s.parentNode.insertBefore(po, s); 
    })(); 
</script> 

,只要你想使用你选择的图书馆只是执行它(即:jQuery的)

如果你想设置脚本标记参数,请使用以下语法:

完整的例子包括在日Ë以下网址:

https://developers.google.com/+/plugins/+1button/#example-async-load

+0

但在你的情况下,在HTML代码已经。在我的情况下,我需要通过jquery.append添加。我试过你的方式,但在我的情况下,它不起作用。 – user1973295

+1

在执行上述功能之前,您需要添加。我会给它一个名字并在追加后执行它。 – canolucas

+0

好吧,我试过了,但它仍然不起作用,没有任何错误,似乎没有执行此功能,但根据Firebug调试器,一切似乎都正常工作。你能举个例子吗?我真的不知道哪里可能会出错。 – user1973295