keyCode,charCode,which
1.触发顺序keydown keypress keyup,但keypress事件只有输入相关按键才会触发,功能按键不会触发keypress事件(keypress事件有个额外的charCode属性)
2.keypress事件中keyCode大小写敏感,keydown,keyup不敏感
3.keypress对主副键盘的数字键不敏感,keydown,keyup敏感
4.keypress事件,当你按的是(a-z)时,keyCode为0,charCode为键值,当你按的不是(a-z)的非功能键时,keyCode为键值,charCode为0 (ff only)
5.NetScape/FireFox/Opera老版本不支持keyCode,而是用which属性
6.要阻止浏览器的默认(f5)行为要在keydown上阻止,浏览器的默认实现应该就是在这个事件上,而如果在keyup上来阻止默认行为就为时已晚了
备注:IE下阻止浏览器的默认行为(例如F5刷新页面)时需将e.keyCode=0(并且必须是原生的event,不能是jquery event),否则无法阻止.
safari浏览器貌似不允许禁用一些默认行为(f5,backspace)
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
keyCode,charCode,which的更多相关文章
- 4_jquery
官网:www.jquery.com 兼容: 1.jquery-3.1.0.js :form.attr("checked","false")无效 2.firefo ...
- Web3D编程入门总结——面向对象的基础Web3D框架
本篇主要通过分析Tony Parisi的sim.js库(原版代码托管于:https://github.com/tparisi/WebGLBook/tree/master/sim),总结基础Web3D框 ...
- Jquery基础整理
1.简单的JQuery (1) $(document).ready(function(){ $(document).ready(mydays); alert(“加载完毕,请检查!”); functi ...
- jQuery动态操作表单
<html> <head> <title>jquery表格操作</title> <script language="javascript ...
- tampermonkey,采用js解析自定义脚本,实现网页列表数据采集分析
最近一直在做数据采集的事情,目的是使用java开发一套分析指定采集规则,模拟用户动作做数据提取.因此定义了一套动作脚本,open,click,get,list,opentab,closetab...j ...
- JS事件及其兼容用法
JavaScript与HTML之间的交互是通过事件实现的.事件,就是文档或浏览器窗口中发生的一些特定的交互瞬间. 1.事件流:描述的是从页面中接收事件的顺序. IE提出的事件冒泡流:事件开始由最具体的 ...
- jQuery带缩略图轮播效果图片切换带缩略图
以上为效果图 HTML代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /& ...
- JavaScript总结(三)
如何执行代码语句? 使用函数,函数是一组可以随时随地运行的语句,它们是JavaScript的核心.函数是由关键字function.函数名加一组参数以及置于括号中要执行的代码声明的.语法如下: Func ...
- DOM实战
作者声明:本博客中所写的文章,都是博主自学过程的笔记,参考了很多的学习资料,学习资料和笔记会注明出处,所有的内容都以交流学习为主.有不正确的地方,欢迎批评指正 视频来源:https://www.bil ...
随机推荐
- CSS复习
CSS 选择器 p.into 表示带有into类的p元素 伪类: a) first-line b) last-line 伪元素: :before 能在指定的元素前添加内容(创造 ...
- [NHibernate]多对多关系(关联查询)
目录 写在前面 文档与系列文章 多对多关系关联查询 总结 写在前面 上篇文章介绍了nhibernate中对一对多关系进行关联查询的几种方式,以及在使用过程需要注意的问题.这篇文章对多对多关系的查询处理 ...
- js自动闭合html标签,自动补全html标记
假如我有一个DIV,如果没有闭合后面的样式都会乱了,这样的代码可能会影响后面的样式,我希望用js去自动闭合这种没有闭合的标签: 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 ...
- seajs源码分析
seajs主要做了2件事 1.定义什么是模块,如何声明模块:id.deps.factory.exports ----define=function(id,deps,factory){return ex ...
- PAT mooc DataStructure 4-2 SetCollection
数据结构习题集-4-2 集合的运用 1.题目: We have a network of computers and a list of bi-directional connections. Eac ...
- 第2月第5天 arc invocation getReturnValue
http://blog.csdn.net/zengconggen/article/details/38024625
- XHR——XMLHttpRquest对象
创建XMLHttpRequest对象 与之前众多DOM操作一样,创建XHR对象也具有兼容性问题:IE6及之前的版本使用ActiveXObject,IE7之后及其它浏览器使用XMLHttpRequest ...
- How do I enable log4net internal debugging?
http://logging.apache.org/log4net/release/faq.html
- Linux下vim 开发环境配置及配色(Ruby)
终端设置 字体:Monospace 10 粗体 内置方案M:黑底白字 内置方案S:Linux控制台 安装vundle git clone https://github.com/VundleVim/Vu ...
- 启动apache和tomcat端口被占用解决办法
1,打开控制台,使用命令 netstat -aon|findstr 8090 找出端口被占用的进程, 2,使用 taskkill -f -pid 4116(进程id)杀掉当前占用端口的进程