当前位置: 首页 > news >正文

三好街做网站的公司变色龙app制作教程

三好街做网站的公司,变色龙app制作教程,珠海网站建设珠海,鸿安建设集团网站目录 防抖 搜索框带来的问题 实现的思路 案例 封装防抖函数 节流 滚动条加载带来的问题 实现的思路 案例 封装节流函数 防抖 搜索框带来的问题 需求#xff1a;根据输入框内容来请求数据 !DOCTYPE html html langen head…目录 防抖 搜索框带来的问题 实现的思路 案例 封装防抖函数 节流 滚动条加载带来的问题 实现的思路 案例 封装节流函数 防抖 搜索框带来的问题 需求根据输入框内容来请求数据 !DOCTYPE html html langen headmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title /head bodyinput idsearchTxt typesearch placeholder请输入关键字检索scriptdocument.querySelector(#searchTxt).oninput function(){console.log(发送请求当前输入框值,this.value)}/script /body /html 上面的代码会带来一个问题用户每输入一个关键字都会触发 现在是要求是用户停下来不输入的时候再触发一次这个时候就需要用到防抖函数了 实现的思路 事件函数执行,先创建个定时器 把逻辑代码放到定时器中 当函数再次触发清除定时器 创建一个新定时器即可 案例 !DOCTYPE htmlhtml langenheadmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title/headbodyinput idsearchTxt typesearch placeholder请输入关键字检索scriptlet t nulldocument.querySelector(#searchTxt).oninput function(){clearTimeout(t) //有定时器则清除t setTimeout(() {console.log(发送请求当前输入框值,this.value)}, 1000);}/script/body/html 封装防抖函数 !DOCTYPE htmlhtml langenheadmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/title/headbodyinput idsearchTxt typesearch placeholder请输入关键字检索scriptdocument.querySelector(#searchTxt).oninput debounce(function(){console.log(发送请求当前输入框值,this.value)})//封装一个公共的防抖函数function debounce(fn){//将函数逻辑放入fn中let t null //此处利用闭包保存定时器return function(){clearTimeout(t) //有定时器则清除t setTimeout(() {//箭头函数指向外面函数的this,而外面函数由input触发fn.call(this) //利用call改变fn的this,否则fn的this为undefined}, 1000);}}/script/body/html 节流 滚动条加载带来的问题 需求页面滚动时,加载数据列表 !DOCTYPE htmlhtml langenheadmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlestyle.box{height: 1000px;}/style/headbodydiv classbox​/divscriptdocument.onscroll function(){console.log(发送ajax,请求下一页数据)}/script/body/html 上面的代码会带来一个问题用户轻轻下拉滚动条,onscroll中的逻辑会触发很多次 现在是要求是降低触发事件的频率,这个时候就需要用到节流函数了。 实现的思路 事件函数执行,先判断是否有定时器有则直接return 把逻辑代码放到定时器中 定时器执行后置空定时器变量 事件函数执行时再创建一个新的定时器 案例 !DOCTYPE htmlhtml langenheadmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlestyle.box{height: 1000px;}/style/headbodydiv classbox/divscriptlet t nulldocument.onscroll function(){if(null ! t) return //关键点1有定时器则returnt setTimeout(() {//关键点2逻辑代码放到定时器中console.log(发送ajax,请求下一页数据)t null  //关键点3定时器执行完毕,置空定时器变量}, 500);}/script/body/html 封装节流函数 !DOCTYPE html html langen headmeta charsetUTF-8meta http-equivX-UA-Compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1.0titleDocument/titlestyle.box{height: 1000px;}/style /head bodydiv classbox/divscriptdocument.onscroll throttle(function () {console.log(发送ajax,请求下一页数据,this)})//封装一个节流函数function throttle(fn) {return function(){ //真正的事件处理函数this:事件源//这里用的是fn.t变量的形式来保存定时器变量if(null ! fn.t) return fn.t setTimeout(() { fn.call(this) //确保上面的函数中this关键字是事件源如果用fu()调用上面this就变成了windowfn.t null //置空让事件再次触发的时候重新创建一个定时器}, 500);}}/script /body /html
http://www.dnsts.com.cn/news/141094.html

相关文章:

  • 天通苑网站建设wordpress设置301重定向
  • 网站服务器开发中国景观设计网
  • 优质做网站哪家好镇江电子商务网站建设
  • 网站系统建设技术服务费设计师网址推荐
  • 在小网站上做点击广告凌哥seo
  • 网页制作网站开发的论文推广产品的方式有哪些
  • 网站建设需要备案wordpress动态标题
  • 微网站 淘宝客网站备案方法
  • 为新公司取名南京做网站优化价格
  • 中企动力做网站 知乎做国际网站每年要多少钱
  • 网站开发工具 比较wordpress 增加菜单
  • 数据库查询网站建设网站上传根目录
  • 温州网站网络公司吉林网站建设价格
  • 聊城微信推广网站wordpress建群站
  • 设计素材类网站开发策划书做装机u盘那个网站好
  • 手机网站优化国人在线做网站怎么样
  • soho的网站怎么做网站运营者
  • 做视频网站需要多少带宽江苏省 建设 注册中心网站
  • 网页设计视频教程-响应式手机网站制作怎样做网站快照
  • 网站建设原理与实践网站内容设计主要包括
  • 学校网站 网站建设长沙互联网公司在哪个区
  • 广告网站建设实训报告知名商城网站建设报价
  • php 企业网站开发教程linux 搭建网站服务器
  • 郑州高端定制网站wordpress 图片id
  • 做1元夺宝网站挣钱吗如何做网站创业
  • 网站做微信支付宝支付接口怎么仿网站链接
  • 如何做产品网站的推广网站域名怎么做变更
  • 应用商店下载入口iis 网站 优化
  • 网站建设和维护怎么学灯具的网站建设
  • 常州 网站设计高校网站建设费用