JavaScript和jQuery:是否有任何PROPER onchange事件?

时间:2013-05-23 10:58:28

标签: javascript jquery events onchange

众所周知,'onchange'事件只有在输入失去焦点时才会触发。 但是,如果输入改变了它的价值,那么网络应用程序通常需要立即执行某些操作,并且不会改变这些更改的方式:用户键盘,鼠标或其他脚本...... 当然,我可以声明一个函数,它将每秒触发100次并检查所需元素的值,并在值发生变化时执行某些操作。 但它看起来很奇怪:首先它会从用户浏览器中获取更多功能,在某些情况下,第二次1/100秒可能会不足等等......最后它并不精彩!

你有更好的想法吗?

3 个答案:

答案 0 :(得分:1)

您可以收听多个事件以确保

$('input').on("keyup input paste propertychange", function(event){
  // do stuff
});

答案 1 :(得分:0)

使用keyup - 它会立即开火,而不是在输入失去焦点时:

$("#input").keyup(function() {

});

答案 2 :(得分:0)

在现代浏览器中,您应该使用oninput事件:

$("input").on('input',function() {
    //code here
});