输入中文的JQuery/DOM事件(ibus)
JQuery/DOM event for typing Chinese (ibus)?
当我们键入时,有很多事件会被触发。
如keyup, keydown, keypress或其他。
是否只有当文本字段中的内容发生变化时才会触发其他事件?如果没有,如何编写一些javascript代码来实现这个功能
变更事件可能有帮助?
我创建了一个简单的工具来确定当按下键修改可满足元素中的文本节点时会发生什么。当我这样做时,我决定检查使用ibus时会发生什么,因为我在自己的工作中使用ibus。我确定当使用ibus时,生成的唯一键盘事件是具有which
值的keyup事件,这是无用的。
这是我创建的小提琴:
http://jsfiddle.net/lddubeau/jWnL3/打开Javascript控制台。
单击run .
在"toto"字的第2dn和第3个字符之间单击。
使用ibus输入一些东西。例如,输入"我".
根据浏览器的不同输出不同。在Chrome 29上,每次击键都会被记录下来,所以如果我使用tonepy方法输入"我",我会为每个"w"o"3"answers"1"获得keyup和keydown。(输入拼音,音调然后按1选择第一个选项。)最后一个事件是:
event type: keyup which: 229 keyCode: 229 charCode: 0 node value: to我to
在此之前的事件都有相同的值,除了一些是"keydown"类型,当然节点值显示"toto"直到最后一个事件。
firefox23只注册了一个事件:
"event type:" "keyup" "which:" 49 "keyCode:" 49 "charCode:" 0 "node value:" " to我to "
没有keydown或keypress事件产生。(当在ascii范围内输入字符时,每个键都有keydown, keypress和keyup)
which和keyCode的值似乎不对应任何有意义的东西。我已经检查了传递给事件处理程序的事件对象,并且没有看到任何字段表明用户刚刚键入了
相关文章:
- 分派点击事件并保留击键修饰符
- 模糊事件的Javascript测试
- keyup事件处理程序更改焦点不适用于快速键入
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- 如何使Javascript动态html表及其上的事件
- 使用类从一个标记中双击事件
- 如何在未直接触发的情况下停止事件
- 如何在elfinder插件(一个文件管理器插件)上获得上传前事件
- 对iPad上的点击事件反应缓慢
- 事件和状态
- Fancybox是否将Click事件静音
- 主干-不管怎样,检查事件以前是否绑定过
- 从控制器返回后Ajax启动事件激发
- 如何从画布上的某个移动事件中获取X和Y
- Jquery:未触发select事件
- JsFiddle上的鼠标事件不起作用
- 只覆盖箭头键滚动事件
- $window.ga在AngularJS事件中未定义
- cron作业与Javascript计时事件
- 输入中文的JQuery/DOM事件(ibus)