gpt4 book ai didi

javascript - cocos creator的自定义html按钮

转载 作者:行者123 更新时间:2023-11-30 19:08:31 31 4
gpt4 key购买 nike

我正在使用 Cocos creator 创建一个仅适用于网络浏览器的简单游戏,并且需要实现一个分享到 twiiter 按钮。但我需要用普通的 javascript 来做到这一点。到目前为止,我有这段代码。

cc.Class({
extends: cc.Component,

properties: {
tweet: cc.Button
},

start() {
const el = document.createElement('a');
el.classList.add('twitter-share-button');
el.href = 'https://twitter.com/intent/tweet?url=http://test.com;via=stack';
el.id = 'twiiterBtn';

// After appending to body, element exists.
document.body.appendChild(el);

window.twttr = (function(d, s, id) {
var js,
fjs = d.getElementsByTagName(s)[0],
t = window.twttr || {};
if (d.getElementById(id)) return t;
js = d.createElement(s);
js.id = id;
js.src = 'https://platform.twitter.com/widgets.js';
fjs.parentNode.insertBefore(js, fjs);
t._e = [];
t.ready = function(f) {
t._e.push(f);
};
return t;
})(document, 'script', 'twitter-wjs');

window.twttr.ready(function(twttr) {
twttr.events.bind('tweet', function(event) {
console.log('tweet callback', event);
});
});

this.tweet.node.on('click', this.dispatch);
},

dispatch() {
// Everytime I click the button, this function gets called correctly
// but the element doesn't exist anymore, Cocos creator removed it.
console.log(document.getElementById('twiiterBtn'))
}
});

start() 我创建元素并添加 twiiter 按钮所需的类,window.twttr 工作正常,执行就绪函数,但 Cocos creator 正在删除我的元素并且由于元素不存在了,回调函数不工作。如果有人遇到类似情况并且知道我该如何解决。

我基本上需要实现 tweet btn 并获得回调。

谢谢

最佳答案

您似乎无法知道用户是否真的发布了推文。这里有更多关于它的信息:https://stackoverflow.com/a/48803977/4066787

但这是一个工作代码,当用户点击并打开弹出窗口时有一个回调

cc.Class({
extends: cc.Component,

properties: {
tweet: cc.Button
},

start() {
// TODO: text IS CUSTOM MESSAGE; via IS TWITTER USERNAME
const url = encodeURI('https://twitter.com/intent/tweet?text=super custom message;via=TwitterAccount');
const el = document.createElement('a');

el.classList.add('twitter-share-button');
el.href = url;
el.target = '_blank';
el.id = 'twitter-intent';

this.tweet.node.on('click', function(){
window.open(url, '_blank', 'location=yes,height=370,width=520,scrollbars=yes,status=yes');

// TODO: send callback to server.
console.log("call API")
});
}
});

关于javascript - cocos creator的自定义html按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58740306/

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