使用Javascript / jQuery捕获对输入框内容的所有更改

我有一个带有输入框的页面,以及一个处理此输入框的值并生成一段文本的函数.我希望这个文本总是与输入框的内容相关,所以我用jQuery附加了几个事件处理程序来捕获任何更改:

$('#input').bind('keyup cut paste', function(){...});

这在大多数情况下效果很好.只要用户以任何方式使用键盘修改内容,或右键单击以使用剪切或粘贴功能,文本就会立即更新.但是,有两个事件我仍然没有弄清楚如何捕获,如果它甚至可能这样做:

>当用户选择文本并拖动时,它会在输入框中执行不同的位置
>当用户在右键单击上下文菜单中使用“删除”操作时

当然,这两个都可以通过绑定更改事件来检测,但是这种方法的问题是它不会在输入框丢失焦点之前触发.这些绑定的重点是在输入框的值发生变化时实时更新文本,因此更改并不好.

英语是我的第二语言,所以我可能只是在写我的谷歌搜索时表现不好,但到目前为止他们什么都没有.在挖掘了几个相关的SO页面后,我还没有找到任何解决方案,所以我在这里问.是否有一个我不知道的事件绑定?如果没有,我可以采取不同的方法吗?或者使用普通的Javascript这是不可能的?

在非IE浏览器中,您可以处理输入事件.
在IE中,您可以处理propertychange事件.

Demo(适用于所有浏览器)

相关文章
相关标签/搜索