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

文章讲述了在使用百度分享组件时遇到的问题,即AJAX动态加载内容(如瀑布流)后,分享按钮无法正常工作。为了解决这个问题,作者发现需要重新初始化组件,通过调用`window._bd_share_main.init()`函数。将这个函数加入到内容生成函数之后,可以确保每次内容加载后分享组件都能正确初始化。
摘要由CSDN通过智能技术生成

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

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

1

_bd_share_main.init

放到 Chrome 控制台执行一下

1

window._bd_share_main.init();

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

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

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();

}

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

执刀人的工具库

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值