emi*_*lly 16 html javascript jquery google-chrome
我的应用程序需要用户输入,在文本框中输入值时,用户按Enter(返回键)并调用按钮onclick事件.这适用于IE,FF但不是Chrome.在输入chrome时,不生成keypress事件这是我的代码片段
$('#myDiv').keypress(function (e) {
alert("Key pressed");
if (e.keyCode == $.ui.keyCode.ENTER) {
alert("enter pressed");
}
});
Run Code Online (Sandbox Code Playgroud)
有人可以提供这方面的意见吗?
sde*_*ont 25
跨浏览器方法:
$('#myDiv').keydown( function(e) {
var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
if(key == 13) {
e.preventDefault();
alert("enter pressed");
}
});
Run Code Online (Sandbox Code Playgroud)
在Chrome 24上测试:http://jsfiddle.net/PTauw/1/
keypress是检测哪个字符已被输入的正确事件(尽管在这种特殊情况下,检测输入键的keydown情况也同样有效).但是,如何获取在按键事件中键入的字符在浏览器之间是不一致的,因此jQuery会对该which属性进行规范化.这是你想要的:
$('#myDiv').keypress(function (e) {
alert("Key pressed");
if (e.which == $.ui.keyCode.ENTER) {
alert("enter pressed");
}
});
Run Code Online (Sandbox Code Playgroud)
关键事件的权威参考:http://unixpapa.com/js/key.html
| 归档时间: |
|
| 查看次数: |
26824 次 |
| 最近记录: |