From e1b028d486713eaf55aaf35fbf334aa568059c0d Mon Sep 17 00:00:00 2001
From: wwf <1971391498@qq.com>
Date: 星期二, 14 四月 2026 15:46:54 +0800
Subject: [PATCH] 项目复制

---
 src/utils/UA.js |   57 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 deletions(-)

diff --git a/src/utils/UA.js b/src/utils/UA.js
new file mode 100644
index 0000000..d27de0f
--- /dev/null
+++ b/src/utils/UA.js
@@ -0,0 +1,57 @@
+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) { // 鍒ゆ柇鏄惁涓篒OS绯荤粺
+    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
+}
\ No newline at end of file

--
Gitblit v1.8.0