1.业务场景

在文本框中输入内容,执行查询接口,但遇到一个问题,当用拼音打字写汉字去搜索的时候,会输入一些字母拼成汉字,怎么能监听等拼音文字输入完成后再触发文本框监听事件

2.解决方案

在js中有两个事件:

compositionstart:(监听拼音开始输入)

compositionend:(监听拼音输入完成)

3.代码实现

<div><input type="text" class="input">
</div>
    <script>var inp=document.querySelector('input');let isComposite=false;//控制search()触发function search(){//接口开始查询console.log('搜索');}inp.addEventListener('input',function(){if(!isComposite){search();}})inp.addEventListener('compositionstart',function (){console.log('start');isComposite=true;})inp.addEventListener('compositionend',function(){console.log('end');isComposite=false;//由于等待拼音字母输入结束后文本框输入事件则不监听了//所以在结束拼写监听中放search()search();})</script>

解决input事件监听拼音输入法导致高频事件相关推荐

  1. vue判断是否双击_vue双击事件2.0事件监听(点击-双击-鼠标事件)和事件修饰符操作...

    Vue 事件处理方法 可以用 v-on 指令监听 DOM 事件,并在触发时运行一些 JavaScript 代码. v-on:click 单击事件 + + - - v-on:dblclick 双击事件 ...

  2. 13、Java Swing事件监听:事件处理模型和事件监听器

    事件表示程序和用户之间的交互,例如在文本框中输入,在列表框或组合框中选择,选中复选框和单选框,单击按钮等.事件处理表示程序对事件的响应,对用户的交互或者说对事件的处理是事件处理程序完成的. 当事件发生 ...

  3. 高德地图marker事件监听-高德地图marker绑定事件就执行了[解决立即执行]

    官方的demo是这样的: 地址:[http://lbs.amap.com/api/javascript-api/example/infowindow/add-infowindows-to-multip ...

  4. jQuery绑定事件监听bind和移除事件监听unbind用法实例详解

    这里分别采用后bind(eventType,[data],Listener)//data为可选参数,one()该方法绑定的事件触发一次后自动删除,unbind(eventType,Listener), ...

  5. java 事件监听应用_Spring Boot应用事件监听示例详解

    前言 本文主要给大家介绍了关于Spring Boot应用事件监听的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 1. Spring Boot特有的应用事件 除了Spring ...

  6. 移除元素所有事件监听_前端日记—DOM 事件机制和事件委托

    DOM事件机制 事件指的就是就是onclick,onmouseover,onmouseout等. 2002年W3C规定了浏览器的事件调用顺序标准,这其中有两个关键术语. 事件捕获:简单一点解释事件捕获 ...

  7. js: 添加事件监听addEventListener、移除事件监听removeEventListener

    文档 https://developer.mozilla.org/zh-CN/docs/Web/API/EventTarget/addEventListener https://developer.m ...

  8. 监听拼音输入法确定输入 ,compositionstart 、 compositionend 、 input都存在时的解决办法

    $(function () {var cpLock = true;$('#textbox').off().on({compositionstart: function () {//中文输入开始cpLo ...

  9. html键盘事件监听,react怎样监听键盘事件

    react监听键盘事件的方法:React中有监听键盘按下事件onKeyUp或者onKeyDown属性(以下用onKeyUp),值为自定义方法keyUp,即onKeyUp={this.keyUp}. 通 ...

最新文章

  1. gitlab提交合并_notification - 如何把gitlab项目中的提交、PUSH、合并请求的通知发送到邮箱...
  2. 探React Hooks
  3. mysql 返回的查询结果为空 (即零行)._Mysql数据同步(单向)
  4. 用ajax向后台传递数组参数
  5. php多个逻辑如何分为多个逻辑块,php 项目如何分层
  6. 解决ubuntu下arduino IDE的Serial Port无法选择问题
  7. insertBefore方法(javascript与jQuery)
  8. android 导入 苹果手机,安卓手机文件怎么传到苹果手机
  9. 【Latex】教你如何在word中像LaTex那样打公式
  10. 苹果官网iPad mini滚动动画实现原理探究
  11. 易语言注册机接码平台对接
  12. 相似度系列-3:传统方法ROUGE ROUGE: A Package for Automatic Evaluation of Summaries
  13. 【Java】学习日记 Day11
  14. 【番杰的问答笔记】摄氏度与华氏度的转换
  15. 如何应对失业潮风险?——普通人的生存指南
  16. 定位技术-定位模块(u-blox)
  17. 从零开始SVN(1)--服务端与命令行操作
  18. 《ISAR成像原理算法和应用》
  19. 大屏扩展怎么取消任务栏_win7系统扩展双屏幕时,如何在两个屏幕下都显示任务栏...
  20. html顺序进场动画,十六种炫酷纯css加载动画(一)

热门文章

  1. JSP+Servlet+MySql超市管理系统项目源码
  2. 直播回顾 | 论道原生:云原生大数据建设实践
  3. 铁路工程物资管理软件系统
  4. 驱动人生8可提供Win11专用的intel网卡驱动
  5. 月黑风高夜!把室友的STM32换成了GD32
  6. 6种最流行的项目管理方法
  7. java数组 如何动态增加、查询、删除元素
  8. 【ARMv8 SIMD和浮点指令编程】Libyuv I420 转 ARGB 流程分析
  9. 工信部郑昕:中小企业信息化要把握云计算契机
  10. 中国省市区三级城市列表