我一直在寻找答案,并尝试了许多选择,但没有任何效果。
所以,我正在尝试在移动设备上禁用纯聊天。
纯聊天代码:
<script type='text/javascript'
data-cfasync='false'>
window.purechatApi = {
l: [],
t: [],
on: function() {
this.l.push(arguments);
}
};
(function() {
var done = false;
var script = document.createElement('script');
script.async = true;
script.type = 'text/javascript';
script.src = 'https://app.purechat.com/VisitorWidget/WidgetScript';
document.getElementsByTagName('HEAD').item(0).appendChild(script);
script.onreadystatechange = script.onload = function(e) {
if (!done && (!this.readyState || this.readyState == 'loaded' || this.readyState == 'complete')) {
var w = new PCWidget({
c: 'b935f3c9-9b39-4746-8080-c4b0ac74963d',
f: true
});
done = true;
}
};
})();
</script>
你知道怎么解决吗?
检测页面是否在移动设备上运行是一件棘手的事情。您可以在此处的相关问题中阅读有关它的更多信息
如果您选择最赞成的解决方案,您可以通过以下方式实现您想要的:
if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) === false) {
// not mobile device,
// initialise pure chat here
}
免责声明:此解决方案取决于用户代理字符串,这不是最可靠的,因为它可以由用户轻松更改。但在这种特殊情况下,这是一个足够合理的解决方案。
只需在 theme.liquid 或 styles.scss.liquid 中添加以下行
@media (max-width: 799px){.purechat{display:none !important;}}
根据需要调整max-width
。这将加载脚本,但会将其隐藏在任何宽度小于 800px 的屏幕上。