前言:
由于项目中有告警上报,需要节流处理,而告警上报需要webSocket推送,于是在项目中增加button点击模拟上报的告警,发现onclick点击不会节流,事件监听addEventLisenter则可以。经过查找资料,终于发现问题所在,现以防抖为例,记录如下:
1.addEventListener事件防抖生效
element.addEventListener(eventType, eventListener, useCapture);
- element 是要添加事件监听器的DOM元素
- eventType 是一个字符串,表示要监听的事件类型,例如 “click”、“keydown”、“submit” 等
- eventListener 是当事件发生时会被调用的回调函数。这个函数可以接收一个事件对象作为参数,其中包含有关事件的详细信息
- useCapture 是一个可选的布尔值,表示事件是在捕获阶段(true)还是冒泡阶段(false,默认)
<body>
<button id="testBtn1">监听防抖</button>
<script>
function debounce(fn,delay){
//只会在页面加载完成后打印一次
console.log("debounce函数被调用啦"