javascript – 动态添加Google加1按钮和IE8问题

前端之家收集整理的这篇文章主要介绍了javascript – 动态添加Google加1按钮和IE8问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否有任何方法可以动态添加Google加1按钮?我需要这个,因为一个页面有许多URL可供共享,它们是由 AJAX获得的.所以,当我需要URL时,我想在页面的某些位置生成“1”-s.

我编写的测试代码适用于IE8以外的所有浏览器(谷歌根本不支持IE7):

<div class="googlePlusBtn"></div>
<a href="#" class="addGooglePlus">Click me!</a>
<script type="text/javascript">
jQuery(function(){
    jQuery('.googlePlusBtn').html('<g:plusone annotation="inline"></g:plusone>');
    jQuery('a.addGooglePlus').click(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);
        return false;
    })
})
</script>

请你帮助我好吗?

UPD:固定.解决方案如下:

<div id="googlePlusBtn"></div>
<a href="#" class="addGooglePlus">Click me!</a>
<script type="text/javascript">
jQuery(function(){
            var po = document.createElement('g:plusone');
            var s = document.getElementById('googlePlusBtn');
        s.appendChild(po);
    jQuery('a.addGooglePlus').click(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);
        return false;
    })
})
</script>

所以,只需将创建文档方法从jQuery更改为清理Javascript. IE8适用于此!

解决方法

解决方案如下:
<div id="googlePlusBtn"></div>
<a href="#" class="addGooglePlus">Click me!</a>
<script type="text/javascript">
jQuery(function(){
            var po = document.createElement('g:plusone');
            var s = document.getElementById('googlePlusBtn');
        s.appendChild(po);
    jQuery('a.addGooglePlus').click(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,只需将创建文档方法从jQuery更改为清理Javascript. IE8适用于此!

猜你在找的JavaScript相关文章