3

我正在尝试在表单中放置一些占位符。它们在 Chrome 和 Firefox 中运行良好,但我无法让它们在 IE 上运行(我正在使用 IE9 进行测试)。问题是输入事件仅在向输入添加文本时触发,而不是在删除时触发(使用删除键、剪切、右键单击等)。

这是我的代码(使用 jQuery):

$input.on('input propertychange', function() {
    if($input.val() == '')
        $placeholder.show();
    else $placeholder.hide();
});

我读到这可能是一个已知问题。如果是这样,是否有任何解决方法?

感谢您的帮助。

4

2 回答 2

1

如果你想检查特殊键,你应该使用 keyup:

http://api.jquery.com/keyup/

$('input').keyup(function(e){
   if (e.keyCode == 13)
      console.log('enter!');  
});

如果您只想在任何更改上触发事件,您应该使用更改事件:

http://api.jquery.com/change/

$('input').change(function(){
   //When it changes
});
于 2013-01-20T19:54:15.120 回答
0

尝试使用keyup事件。每次用户释放按键时都会进行检查,因此对于按下删除和剪切组合键等的检查非常一致。

于 2013-01-20T19:15:34.607 回答