实现移动端的即时搜索的最佳方案,一定是使用input propertychange事件了,但是在ios设备上遇到了问题,使用ios自带输入法输入汉字时,会出现多次触发input事件的情况,一开始可能由于搜索的关键字不得法,没有即时找到合适的方案,后来终于在网上找到了解决方案,现记录如下:

代码实现

/**
* @param flag: 用于标记是否是非直接的文字输入
*/
var flag = false;
$('#id').on({'compositionstart': function() {flag = true;},'compositionend': function() {flag = false;if(!flag) {//do something...doSomethingFunction();}},'input propertychange': function() {if(!flag) {//do something...doSomethingFunction();}}
});

•实现原理:借助 compositionstart 和 compositionend 两个事件来作为一个开关,同时借助状态变量,只在文字输入结束之后再触发input事件

•使用该方式处理之后,如果只是需要输入英文,那么需要点击enter确定才触发

参考的原文出处:https://www.cnblogs.com/dubox/p/5997969.html

即时搜索:对于ios自带输入法输入中文时多次触发input事件的处理相关推荐

  1. 【h5】ios自带输入法输入中文时多次触发input事件的处理

    实现移动端的即时搜索的时候监听input事件掉接口查询,但是在ios设备上遇到了问题,使用ios自带输入法输入汉字时,会出现输入一个字母就触发一次事件,导致频繁调用接口的问题. 如果是输入纯英文没什么 ...

  2. 解决input中输入中文过程中会触发input事件的问题

    问题描述: 监听文本输入框的input事件,在拼写汉字时会触发input事件,如下图: 需求: 选词完成后触发input事件,只触发一次. 解决办法: 通过查阅资料得知在输入中文(包括语音识别时)会先 ...

  3. iOS备忘录之如何去掉苹果自带输入法输入英文时的“空格”

    背景:苹果自带键盘输入英文时,中间会有"空格". 解决方法:"空格"的字符为"8198". NSString *checker = [NSS ...

  4. vue中解决模糊搜索输入中文时--未输入完成时触发input事件

    在给输入框绑定input或keydown事件时 预期效果是有输入法时,输入中文后触发事件,不希望输一个字母就触发一次事件 可以用到compositionstart,compositionend. 主流 ...

  5. Mac使用技巧|轻松使用Mac自带输入法输入不会读的字

    Mac上运行的操作系统,它拥有大量隐藏的快捷方式,键盘命令和功能,分享几个技巧,如果你是 Mac 新手或之前对 Mac 系统不太了解的,看过来吧- 更改屏幕分辨率 打开「系统偏好设置 >> ...

  6. input框监听输入法输入中文

    input框监听输入法输入中文 需求 input事件 select为什么不能使用 注意select的onChange和onSearch 需求 想要在input框中进行接口实时查询,但是在使用输入法输入 ...

  7. 搜狗输入法在idea打不了汉字_搜狗输入法在idea打不了汉字_好烦啊,IDEA输入中文时输入法候选词框不跟随光标......

    PS:虽然写这篇文章会让人感觉很无聊,但是既然费心思去做了,写下来也不为过O(∩_∩)O~ 起因: 前几日在下从Eclipse搬迁到了IDEA,但是输入中文代码注释时,发现输入法的候选词框一直在右下角 ...

  8. 搜狗输入法在idea打不了汉字_好烦啊,IDEA输入中文时输入法候选词框不跟随光标...

    PS:虽然写这篇文章会让人感觉很无聊,但是既然费心思去做了,写下来也不为过O(∩_∩)O~ 起因: 前几日在下从Eclipse搬迁到了IDEA,但是输入中文代码注释时,发现输入法的候选词框一直在右下角 ...

  9. 好烦啊,IDEA输入中文时输入法候选词框不跟随光标

    PS:虽然写这篇文章会让人感觉很无聊,但是既然费心思去做了,写下来也不为过O(∩_∩)O~ 起因: 前几日在下从Eclipse搬迁到了IDEA,但是输入中文代码注释时,发现输入法的候选词框一直在右下角 ...

最新文章

  1. shell命令查阅端口信息_短小强大的8个Linux命令,分分钟帮你提高工作效率!
  2. 来自Facebook AI的多任务多模态的统一Transformer:向更通用的智能迈出了一步
  3. 百年通信史:落后西方半世纪的中国,用 20 年绝地反杀! | 文末送福利
  4. java 反射详解通俗易懂
  5. chromedp网络监听_动态爬虫三:监听网络事件 + 监听js事件
  6. makefile中命令的显示
  7. 中大计算机研究生英语免修条件,通知|关于接受2017级理科研究生 基础英语课程免修免考申请的通知...
  8. Silverlight动态创建Gird
  9. JavaWeb课程复习资料(八)——添加功能
  10. mysql 存储过程调用权限消失的问题,恢复权限
  11. 《Android开发艺术探索》读书笔记 (10) 第10章 Android的消息机制
  12. 一切从零开始外挂教程(翻录)
  13. 我们的高中教育造就了什么?
  14. 360刷Android8,360N6安卓8.1新版刷机包(完整固件升级包安卓8.1)
  15. 如何使用 IT 服务台调查来提高满意度
  16. 从明源动力到创新工场这一路走来
  17. 分享一下前端浏览的一些网址记录
  18. python求极限_数学——函数极限知识以及sympy库的limit
  19. 近似值怎么用计算机,用计算器进行近似计算.docx
  20. C++中的预处理器概述

热门文章

  1. python startswith函数_Python Pandas Series.str.startswith()用法及代码示例
  2. dependenciesManagement 和dependencies 解释
  3. 【智能时代的颠覆】AI让物联网不再是物联网
  4. 分析一下阿里平头哥RISC-V的开源~
  5. 简报 | 法国立法者支持将加密货币税率降低6%的修正案
  6. swift之inout
  7. srsLTE+b210 搭建4G微基站
  8. 2022秋季快手面试经历
  9. hduoj 2001
  10. 学习一个月web开发的成果,服务器C++,数据库postgresql简易的知识分享平台