JavaScript   发布时间:2022-04-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

前言

在阅读本文前,相信大家应该都有所了解,在js获取键盘按下的键值有:event.keyCodeevent.charCodeevent.which

其中:

谷歌浏览器:

event.keyCodeevent.charCodeevent.which都兼容。

火狐浏览器:

event.keyCode部分键值有效,如上下左右键(37,38,39,40),enter键(13),PgUp(33),PgDn(34)等部分有效,对数字键,字母键无效。

event.which也是部分键值有效,如字母键,数字键,enter键,BACkspace键等有效,对上下左右键,PgUp(33),PgDn(34)键无效。

event.charCode也是对部分键值有效,如字母键,数字键,,BACkspace键等有效,对enter键,上下左右键,PgUp(33),PgDn(34)键无效。

ie浏览器:

中,IE8及以下浏览器对event.charCode无效,event.keyCodeevent.which对大部分键值能获得,但是有少部分也不能获得

网络查看说event.which event.keyCode event.charCode 标准化了。但实际还是有区别的。

所以一般都这样写兼容:

e.whiche.charCode;

jquery API地址:http://api.jquery.com/event.which/">http://api.jquery.com/event.which/

如下例子介绍Query限制文本框只能输入数字和小数点的方法

{ /*JQuery 限制文本框只能输入数字*/ $(".NumText").keyup(function(){ $(this).val($(this).val().replace(/[^0-9]/g,'')); }).bind("paste",function(){ //CTR+V事件处理 $(this).val($(this).val().replace(/[^0-9]/g,'')); }).css("ime-mode","disabled"); //CSS设置输入法不可用

/JQuery 限制文本框只能输入数字和小数点/
$(".NumDecText").keyup(function(){
$(this).val($(this).val().replace(/[^0-9.]/g,function(){ //CTR+V事件处理
$(this).val($(this).val().replace(/[^0-9.]/g,"disabled"); //CSS设置输入法不可用
});

Keycode对照表如下:

js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对菜鸟教程的支持。

大佬总结

以上是大佬教程为你收集整理的js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解全部内容,希望文章能够帮你解决js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。