函数写法
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>函数节流和函数防抖</title>
<style>
.demo {
width: 200px;
height: 200px;
border: 1px solid red;
overflow-y: scroll;
margin-top: 50px;
}
.scroll {
height: 5000px;
}
</style>
</head>
<body>
<div class="wrap">
<div id="nothing" class="demo">
普通滚动
<div class="scroll"></div>
</div>
<div id="throttle" class="demo">
函数节流
<div class="scroll"></div>
</div>
<div id="debounce" class="demo">
函数防抖
<div class="scroll"></div>
</div>
</div>
<script type="text/javascript">
// 函数防抖
var debounce = function(idle, action) {
var last;
return function() {
clearTimeout(last);
last = setTimeout(function() {
action();
}, idle);
}
};
// 函数节流
var throttle = function(delay, action) {
var last = 0;
return function() {
var curr = new Date();
if (curr - last > delay) {
action();
last = curr;
}
}
};
// 普通滚动
document.getElementById("nothing").onscroll = function() {
console.log("普通滚动");
};
var test1 = throttle(800, function() {
console.log("函数节流了")});
// 函数节流
document.getElementById("throttle").onscroll = function() {
test1();
};
var test2 = debounce(800, function() {
console.log("函数防抖了")});
// 函数防抖
document.getElementById("debounce").onscroll = function() {
test2();
};
</script>
</body>
</html>
网友回复
js如何流式输出ai的回答并折叠代码块,点击代码块右侧可预览代码?
ai大模型如何将文章转换成可视化一目了然的图片流程图图表?
大模型生成html版本的ui原型图和ppt演示文档的系统提示词怎么写?
rtsp视频直播流如何转换成websocket流在h5页面上观看?
为啥coze会开源工作流agent coze studio?
如何检测网页是通过收藏夹打开的?
python如何实现类似php的http动态脚本请求处理响应代码?
js如何实现类似php的http动态脚本请求处理响应代码?
trae与solo有啥区别不同?
vue如何让ai动态生成问卷调查多步骤表单式收集基础信息自动规划执行任务?