gpt4 book ai didi

javascript - G+ 按钮的渲染回调

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:20:36 25 4
gpt4 key购买 nike

我如何才能仅在 G+ 按钮完成呈现后才执行操作?

Facebook 允许人们使用以下方式做到这一点:

FB.XFBML.parse(document, function() {
alert('rendering done');
});

我仔细阅读了 Google 的文档,但没有发现任何有用的信息。

当前的解决方法

目前我的解决方法是监视 G+ 元素,直到添加了某些元素,然后执行我的操作:

(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js';

po.onload = function() {
var awaitRender = function(element) {
if (element.firstChild &&
element.firstChild.firstChild &&
element.firstChild.firstChild.tagName.toUpperCase() === 'IFRAME') {
alert('rendered!');
} else {
window.setTimeout(function() { awaitRender(element) }, 100);
}
};

var buttons = document.getElementsByClassName('googleplus-button');
for(var i = 0; i < buttons.length; i++) {
awaitRender(buttons[i]);
}
}
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(po, s);
})();

问题

我想知道,如果有的话:

  • 为 G+ 按钮执行此操作的正确方法
  • 比我上面一起破解的更好的实现

最佳答案

尝试将 onload 回调附加到 iframe

您可能需要修改 src 属性,以防在附加 onload 回调之前加载 iframe

关于javascript - G+ 按钮的渲染回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9986456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com