所以一直在寻找一个有Windows应用程序的好聊天程序。找到Twak我非常大的应用程序,所以我想加载它只有当有人真的想和我聊天时。
问题是,一旦您点击我的聊天按钮,聊天框就处于最小化状态。我希望小部件一旦加载就最大化。他们有一个api来最大化
Tawk_API.onLoad = function(){
Tawk_API.maximize();
};
不幸的是,这仅在程序完全加载时才有效。
我尝试了一个查找类的计时器函数,但是他们在每个加载类上更改了类名称" KSKLwOL-1492537819846"
希望可能有另一种方法可以知道程序何时加载然后最大化。
$('.chat').on('click', function (e) {
$('.chat').hide();
var Tawk_API = Tawk_API || {},
Tawk_LoadStart = new Date();
(function () {
var s1 = document.createElement("script"),
s0 = document.getElementsByTagName("script")[0];
s1.async = true;
s1.src = 'https://embed.tawk.to/58f11df330ab263079b5fde1/default';
s1.charset = 'UTF-8';
s1.setAttribute('crossorigin', '*');
s0.parentNode.insertBefore(s1, s0);
document.body.appendChild(s0);
})();
});
如果您想查看我的意思,聊天程序会加载到我的site上。
谢谢,任何人
答案 0 :(得分:2)
一种方法是使用
加载API和hide
小部件作为默认值
Tawk_API.onLoad = function(){
Tawk_API.hideWidget();
};
并点击按钮
$('.chat').on('click', function (e) {
$('.chat').hide();
Tawk_API.showWidget();
您目前正在Tawk
点击加载chat button
API。我建议你应该在Tawk
推荐的页面上加载它。将您的脚本放在</body>
标记之前。
这将为您省去计时器或等待加载API的麻烦。结果,当DOM
准备就绪(完全加载)时,您将拥有Tawk
api对象
<body>
<! -- move your code given by Tawk here -->
</body>
$(document).ready(function(){
if (Tawk_API) {
Tawk_API.onLoad = function() {
Tawk_API.hideWidget();
};
$('.chat-button').on('click', function(){
$('.chat-button').hide();
Tawk_API.showWidget();
Tawk_API.maximize();
});
}
});
但是,如果这是不可理解的,这是我想说的代码示范。 Check this link
答案 1 :(得分:0)
这将确保小部件在加载时最小化,注意 setTimeout 对实现这一点很重要。坚持使用 API 总是好的。
<script type="text/javascript">
var Tawk_API = Tawk_API || {};
var s1 = document.createElement("script"),
s0 = document.getElementsByTagName("script")[0];
s1.async = true;
s1.src = 'https://embed.tawk.to/5b161b708859f57bdc7bd84d/default';
s1.charset = 'UTF-8';
s1.setAttribute('crossorigin', '*');
s0.parentNode.insertBefore(s1, s0);
//here's all you need
Tawk_API.onLoad = function() {
setTimeout(function() {
Tawk_API.minimize();
}, 1);
};
</script>