const ua = window.navigator.userAgent const mobileAgents = ['Android', 'iPhone', 'qxyiOSApp', 'SymbianOS', 'Windows Phone', 'iPad', 'iPod', 'OpenHarmony'] const isWeixin = ua.match(/MicroMessenger/i) == 'MicroMessenger' const isWeixinWork = ua.match(/wxwork/i) == 'wxwork' const isTBSX5 = ua.match(/MQQBrowser/i) == 'MQQBrowser' || ua.match(/TBS/i) == 'TBS' const isHarmony = ua.indexOf('OpenHarmony') > -1 const isHarmonyApp = ua.indexOf('qxyHarmony') > -1 const isAndroid = ua.indexOf('Android') > -1 || ua.indexOf('Adr') > -1 const isAndroidApp = ua.indexOf('qxyAndroidApp') > -1 const isiOSApp = ua.indexOf('qxyiOSApp') > -1 const isiOS = !!ua.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/) || isiOSApp const isApp = isAndroidApp || isiOSApp const isOldVerApp = (isApp) && ua.indexOf('qxyEcpt') < 0 let isMobile = false for (let v = 0; v < mobileAgents.length; v++) { if (ua.includes(mobileAgents[v])) { isMobile = true break } } let iosInputBlur = function () { // 兼容ios输入框 if(isiOS) { // 判断是否为IOS系统 setTimeout(() => { const scrollHeight = document.documentElement.scrollTop || document.body.scrollTop || 0 window.scrollTo(0, Math.max(scrollHeight - 1, 0)) }, 100) } } let wxWorkIosScrollToTop = function() { if (isWeixinWork && isiOS) { setTimeout(() => { window.scrollTo(1, 0) }, 1000) } } export { isWeixin, isWeixinWork, isMobile, isTBSX5, isiOS, isiOSApp, isAndroid, isAndroidApp, isApp, isOldVerApp, iosInputBlur, wxWorkIosScrollToTop, isHarmony, isHarmonyApp }