百度分享动态传递参数示例代码

由于百度分享代码只会执行一次,对于之后 AJAX 动态加载内容(例如瀑布流)中的分享按钮,获取不到,也无法为按钮注册事件。因此需要重新初始化百度分享组件。官方文档中并未对此加以说明,查看 share.js 源代码,找到初

百度分享动态传递参数示例代码

由于百度分享代码只会执行一次,对于之后 AJAX 动态加载内容(例如瀑布流)中的分享按钮,获取不到,也无法为按钮注册事件。

因此需要重新初始化百度分享组件。官方文档中并未对此加以说明,查看 share.js 源代码,找到初始化函数。

_bd_share_main.init

放到 Chrome 控制台执行一下

window._bd_share_main.init();

返回 undefined ,看来就是它没错了。

window._bd_share_main.init(); 这句代码加入到内容生成函数之后,每次内容加载完成后,重新初始化百度分享组件。

function baidu_share(title, cover, url) {alert("11");
    window._bd_share_config = {
        common : {
            bdText : title,
            bdDesc : '',
            bdUrl : url,
            bdPic : cover
        },
        share : [{
            "tag" : "share_1",
            "bdSize" : 24,
        }],
        image : [{
            viewType : 'list',
            viewPos : 'top',
            viewColor : 'black',
            viewSize : '16',
            viewList : [ 'qzone', 'tsina', 'weixin', 'sqq', 'tieba' ]
        }]
    }
    with(document)0[(getElementsByTagName('head')[0] || body).appendChild(createElement('script')).src = 'http://bdimg.share.baidu.com/static/api/js/share.js?cdnversion=' + ~(-new Date() / 36e5)];
    window._bd_share_main.init();
}

放在最后就好了,第一次调用完了,初始化一次就可以了。

本站内容转自网络,若侵犯了你的权益,请联系我们,我们将在第一时间删除。

如若转载,请注明出处:http://www.ntuku.com/19066.html