mint-ui 企业微信PC端内置浏览器 Picker 无法滚动

处理

在主JS代码之上附加以下代码 :

<script>
if (~navigator.userAgent.toLowerCase().indexOf('windowswechat')) {
delete window.ontouchstart
}
</script>

解析

mint-ui 判定是否是移动端源码

从源码可以看出,MintUI主要通过判断window有无ontouchstart属性来控制picker用鼠标滑动还是用touch滑动。

# mint-ui-master\packages\picker\src\draggable.js
// ....
const supportTouch = !Vue.prototype.$isServer && 'ontouchstart' in window;
// ....

原因

然而PC端企业微信内置浏览器window下有ontouchstart。导致内部判定用touch滑动。

这里首先想到的处理办法是判断是否是PC端企业微信内置浏览器,如果是则手动删除 window下的 ontouchstart

// PC端正常浏览器
'ontouchstart' in window // false // PC端企业微信内置浏览器
'ontouchstart' in window // true
上一篇:asp.net mvc如何获取url的相关信息


下一篇:微信和QQ内置浏览器为什么老是弹停止访问该网页,微信域名被屏蔽的解决办法