防抖函数

function debounce(fn, delay){

      var timer = null;

      var handleFn = function(){

        if (timer) clearTimeout(timer);

        // 获取this和argument

        var _this = this;

        var _arguments = arguments;

        timer = setTimeout(function(){

          // 在执行时,通过apply来使用_this和_arguments

          fn.apply(_this, _arguments);

        }, delay);

      }

      // 取消处理

      handleFn.cancel = function(){

        if (timer) clearTimeout(timer);

      }

      return handleFn;

    let myfun= debounce(‘要防抖的函数’, 3000); //返回的是一个函数 myfun在进行事件的绑定;

     援引codewhy

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容