瀏覽代碼

Merge branch 'dev/v4.9.40_tsz' of qmx/jy into feature/v4.9.40

汤世哲 11 月之前
父節點
當前提交
f97bfc927c

+ 38 - 0
src/web/staticres/big-member/js/utils.js

@@ -256,6 +256,44 @@ var utils = {
 
         return true;
     },
+    /**
+ * 应用场景:1.翻页后页面滚动到列表第一条的位置
+ * @param targetEvent 页面要滚动到的目标元素
+ */
+    scrollTargetView (targetEvent, custom) {
+      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.info(targetTop, 'targetTop');
+        scrollWrapper = document.scrollingElement
+        scrollWrapper.scrollTop = targetTop + custom
+        // console.log(`非工作桌面---滚动元素:${scrollWrapper.className ? scrollWrapper.className : scrollWrapper.tagName}, 滚动距离:${targetTop}`)
+      }
+    },
     // 判断变量是否是数组
     isArray: function (o){
         return Object.prototype.toString.call(o) == '[object Array]';

+ 1 - 1
src/web/staticres/css/ele-reset.css

@@ -67,7 +67,7 @@
     position: absolute;
     right: 16px;
 }
-.el-pagination-container .el-pagination .el-input__suffix {
+.el-pagination .el-input__suffix {
   display: unset!important;
 }
 .el-pagination.is-background .el-pager li {

+ 6 - 0
src/web/staticres/frontRouter/pc/my_data_packet/js/index-pc.js

@@ -147,11 +147,17 @@ var vm = new Vue({
         this.chargeList.pageNum = page
         this.chargeList.list = []
         this.chargeDetail()
+        this.$nextTick(() => {
+          utils.scrollTargetView('.online-recharge', 120)
+        })
       },
       getPageData2(page) {
         this.exportList.pageNum = page
         this.exportList.list = []
         this.exported()
+        this.$nextTick(() => {
+          utils.scrollTargetView('.data-export-record', 120)
+        })
       },
       onSizeChange1: function (val) {
         this.chargeList.list = []

+ 4 - 1
src/web/templates/pc/dataPack/index.html

@@ -81,10 +81,11 @@
                                 </div>
                             </div>
                         </div>
-                        <div class="up-line up-biao">
+                        <div class="up-line up-biao online-recharge">
                             <h3>线上自助充值明细</h3>
                             <div class="biao-ge" v-if="chargeList.list">
                                 <el-table
+                                    class="online-recharge"
                                     v-loading="dLoading"
                                     :data="chargeList.list"
                                     style="width: 100%;color:#1d1d1d"
@@ -138,6 +139,7 @@
                         <div class="up-biao">
                             <div class="biao-ge">
                                 <el-table
+                                    class="data-export-record"
                                     v-loading="isLoading"
                                     :data="exportList.list"
                                     style="width: 100%;color:#1d1d1d;cursor: pointer;"
@@ -226,6 +228,7 @@
     </script>
     <script src=//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js></script>
     <script src=//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.13-rc/lib/index.js></script>
+    <script src="{{Msg "seo" "cdn"}}/big-member/js/utils.js"></script>
     <script src='{{Msg "seo" "cdn"}}/frontRouter/pc/my_data_packet/js/index-pc.js?v={{Msg "seo" "version"}}'></script>
 </body>
 

+ 4 - 0
src/web/templates/pc/myOrder.html

@@ -668,6 +668,7 @@
 {{include "/common/pcbottom.html"}}
 {{include "/common/baiducc.html"}}
 <script src="https://cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js"></script>
+<script src="{{Msg "seo" "cdn"}}/big-member/js/utils.js"></script>
 <script src="//cdn-common.jianyu360.com/cdn/lib/element-ui/2.15.13-rc/lib/index.js"></script>
 <script>
   var myPageNavIsNormal = true
@@ -1798,6 +1799,9 @@
             tabIndex: $Index,
             pageNum: this.pageNum,
           })
+          this.$nextTick(() => {
+            utils.scrollTargetView('.order_content')
+          })
         },
         onSizeChange: function(size) {
           this.pageNum = 1