|
@@ -308,6 +308,45 @@ export function moneyUnit(m, type = 'string', lv = 0) {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+ * 应用场景:1.翻页后页面滚动到列表第一条的位置
|
|
|
+ * @param targetEvent 页面要滚动到的目标元素
|
|
|
+ */
|
|
|
+export function scrollTargetView (targetEvent) {
|
|
|
+ if (!targetEvent) return
|
|
|
+ let scrollWrapper
|
|
|
+ let targetTop
|
|
|
+ const inWorkSpace = location.href.indexOf('work-bench') > -1
|
|
|
+ if (inWorkSpace) {
|
|
|
+ // 工作桌面内(qiankun、iframe)
|
|
|
+ const offsetHeight = document.querySelector('.el-header')?.offsetHeight
|
|
|
+ const inApp = window.__POWERED_BY_QIANKUN__
|
|
|
+ if (inApp) {
|
|
|
+ // qiankun
|
|
|
+ const appNode = document.querySelector('#app-container > div').shadowRoot
|
|
|
+ targetTop = appNode?.querySelector(targetEvent)?.offsetTop
|
|
|
+ scrollWrapper = document.querySelector('.el-main')
|
|
|
+ scrollWrapper.scrollTop = targetTop - offsetHeight
|
|
|
+ } else {
|
|
|
+ // iframe
|
|
|
+ const iframeNode = document.querySelector('#work-bench-container iframe')?.contentDocument
|
|
|
+ targetTop = iframeNode.querySelector(targetEvent)?.offsetTop
|
|
|
+ scrollWrapper = iframeNode.body
|
|
|
+ }
|
|
|
+ // console.log(`工作桌面内${inApp ? 'qiankun' : 'iframe'}---滚动元素:${scrollWrapper.className}, 滚动距离:${targetTop}`)
|
|
|
+ scrollWrapper.scrollTop = targetTop - offsetHeight
|
|
|
+ } else {
|
|
|
+ // 非工作桌面
|
|
|
+ targetTop = document.querySelector(targetEvent)?.offsetTop
|
|
|
+ // 因浏览器及模式差异,页面滚动元素存在不同(标准模式:document.documentElement;兼容模式:body)
|
|
|
+ // scrollingElement可获取页面滚动元素
|
|
|
+ console.log(targetTop, 'targetTop');
|
|
|
+ scrollWrapper = document.scrollingElement
|
|
|
+ scrollWrapper.scrollTop = targetTop
|
|
|
+ // console.log(`非工作桌面---滚动元素:${scrollWrapper.className ? scrollWrapper.className : scrollWrapper.tagName}, 滚动距离:${targetTop}`)
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
|
|
|
// 时间戳转换 多少秒、多少分、多少小时前、多少天前 超出10天显示年月日
|
|
|
// 传入一个时间戳
|