zhongzewei пре 6 година
родитељ
комит
0a315ab97e
1 измењених фајлова са 20 додато и 8 уклоњено
  1. 20 8
      web/common/js/slideResize.js

+ 20 - 8
web/common/js/slideResize.js

@@ -15,6 +15,14 @@
  * */
 
 const SlideResize = (function() {
+    //函数防抖
+    let timer = null;
+    function deBounce(fn, wait) {
+        if (timer) {
+            clearTimeout(timer);
+        }
+        timer = setTimeout(fn, wait);
+    }
     //设置水平拖动条的宽度
     //@param {Object dom}resize滚动条
     function setResizeWidth (resize) {
@@ -74,10 +82,12 @@ const SlideResize = (function() {
                 eleObj.right.css('width', rightPercentWidth);
                 setResizeWidth(eleObj.resize);
                 mouseMoveCount += Math.abs(moveSize);
-                if (mouseMoveCount > triggerCBSize && callback) {
-                    callback();
-                    mouseMoveCount = 0;
-                }
+                deBounce(function () {
+                    if (callback) {
+                        callback();
+                        mouseMoveCount = 0;
+                    }
+                }, 20);
             }
         });
         $('body').mouseup(function (e) {
@@ -152,10 +162,12 @@ const SlideResize = (function() {
                 //设置下部分div内spread高度
                 eleObj.bottomSpread.height(bottomChange - limit.notBottomSpread);
                 mouseMoveCount += Math.abs(moveSize);
-                if (mouseMoveCount > triggerCBSize && callback) {
-                    callback();
-                    mouseMoveCount = 0;
-                }
+                deBounce(function () {
+                    if (callback) {
+                        callback();
+                        mouseMoveCount = 0;
+                    }
+                }, 20);
             }
         });
         $('body').mouseup(function (e) {