JavaScript权威设计--事件处理介绍(简要学习笔记十七)
- 事件类型:一个用来说明发生什么类型事件的字符串
- 事件目标:是发生的事件或与之相关的对象。
- 事件处理程序(事件监听程序):是处理货响应事件的函数。
- 事件对象:是与特定事件相关并且包含有关该事件详细信息的对象。
- 事件传播:是浏览器决定哪个对象触发其事件处理程序的过程。
- 事件捕获:在容器元素上注册的特定处理程序有机会再事件传播打破真实目标之前拦截它。
- 阻止标签默认事件的发生
- focus,blur不冒泡。focusin,focusout冒泡。
- load当文档和其他所有外部资源(图片)完全加载并显示给用户时就会触发。
- unload事件与load相对。当用户离开当前文档转向其他文档时触发它。
- beforeunload事件类似unload,确认是否确定离开当前页面。
- onabort图像加载被中断时调用,只支持img
- resize在调整浏览器窗口的时候调用
- scroll滚动滚轮的时候调用
- 鼠标在窗口中的位置:clientX,clientY
- button和which指定按下的鼠标键是哪个。
- 当键盘辅助键按下时,对应的属性altkey,ctrlKey,metaKey,shiftkey会设置为true。
- 对于click事件,detail属性指定了其是单击,双击还是三击。
- contextmenu事件通常在右键单击出菜单之前发生,取消这个事件就可以阻止菜单的显示。
- 对于mouseover和mouseout事件,事件对象有relatedTarget属性说明这个过程设计的其他元素。
- mouseover和mouseout事件会冒泡,IE提供了不冒泡版本,mouseenter和mouseleave。
- mousewheel事件使用在鼠标滚轮,传递的事件对象属性指定滚轮转动的大小和方向。
- 传递给键盘事件处理的事件对象有keyCode,它指定按下或释放的键是哪个。
- altkey,ctrlKey,metaKey,shiftkey用来描述辅助键的状态。
- keydown和keyup是低级键盘事件。当keydown事件产生可打印字符时,在这两个之间会触发keypress事件。
- 该事件对象指定产生的字符而不是按下的键。
- DOM3规定用textinput事件来代替keypress。该事件对象的属性是data。
//设置window对象的onload属性为事件处理程序
window.onload=function(){ }
<button onclick="alert('I am here!')"></button>


- Window对象
- Document对象
- 和所有文档元素
<div id="no">点击这里</div>
var no=document.getElementById("no");
no.addEventListener("click",function(){alert("I am here!")},false);
与其对应的是:removeEventListener




- 返回值为false就是告诉浏览器不要执行这个事件相关的默认操作。
- 如:表单提交按钮的onclick事件返回false能阻止浏览器提交表单。
- 理解事件处理程序的返回值只对通过属性注册的处理程序才有意思这非常重要。
- 而使用addEventListener等事件注册的必须调用preventDefault()方法或者设置事件对象的returnValue属性。
on() 方法在被选元素及子元素上添加一个或多个事件处理程序。
自 jQuery 版本 1.7 起,on() 方法是 bind()、live() 和 delegate() 方法的新的替代品。该方法给 API 带来很多便利,我们推荐使用该方法,它简化了 jQuery 代码库。
注意:使用 on() 方法添加的事件处理程序适用于当前及未来的元素(比如由脚本创建的新元素)。
提示:如需移除事件处理程序,请使用 off() 方法。
提示:如需添加只运行一次的事件然后移除,请使用 one() 方法


JavaScript权威设计--事件处理介绍(简要学习笔记十七)的更多相关文章
- JavaScript权威设计--Window对象(简要学习笔记十三)
1.Window对象是所有客户端JavaScript特性和API的主要接入点. Window对象中的一个重要属性是document,它引用Document对象. JavaScript程序可以通过Doc ...
- javascript权威指南第6版学习笔记
javascript权威指南第6版学习笔记 javascript数组.函数是特殊对象 看一点少一点. 3.1.4 hello.js内容是 var x=.3-.2;var y=.2-.1 console ...
- JavaScript权威设计--JavaScript表达式与运算符,语句(简要学习笔记六)
1.delete是一元操作符,用来删除对象属性或者元素. var a={ x:1, y:2 } delete a.x; //删除x属性 “x”in a //false:a对象中已经不存在x属性 ale ...
- 《Javascript权威指南》13号学习笔记:使用日期和时间
一.创Date示例 1.Date类的方法和属性是非常不静,故,申请书Date属性和方法之前.必须创建Date类的实例. var date = new Date(); //以当前日期和时间创建实例. ...
- 《Javascript权威指南》十六学习笔记:BOM资源---BOM基本应用
BOM基本应用包括:管理浏览器历史记录.得到处理和解决浏览器的信息.本文介绍了这些应用程序. 一.浏览历史管理 1.history对象的方法和属性 History 对象包括用户(在浏览器窗体中)訪问过 ...
- JavaScript权威设计--JavaScript函数(简要学习笔记十一)
1.函数调用的四种方式 第三种:构造函数调用 如果构造函数调用在圆括号内包含一组实参列表,先计算这些实参表达式,然后传入函数内.这和函数调用和方法调用是一致的.但如果构造函数没有形参,JavaScri ...
- JavaScript权威设计--JavaScript函数(简要学习笔记十)
1.函数命名规范 函数命名通常以动词为前缀的词组.通常第一个字符小写.当包含多个单词时,一种约定是将单词以下划线分割,就像"like_Zqz()". 还有一种就是"lik ...
- SQLite介绍、学习笔记、性能测试
SQLite介绍.学习笔记.性能测试 哪些人,哪些公司或软件在用SQLite: Nokia's Symbian,Mozilla,Abobe,Google,阿里旺旺,飞信,Chrome,FireFox可 ...
- JavaScript权威指南(第6版)(中文版)笔记
JavaScript权威指南(第6版)(中文版)笔记
随机推荐
- JavaScript的继承实现方式
1.使用call或apply方法,将父对象的构造函数绑定在子对象上 function A(){ this.name = 'json'; } function B(){ A.call(this); } ...
- 结巴分词3--基于汉字成词能力的HMM模型识别未登录词
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 1 算法简介 在 结巴分词2--基于前缀词典及动态规划实现分词 博 ...
- 神经网络、logistic回归等分类算法简单实现
最近在github上看到一个很有趣的项目,通过文本训练可以让计算机写出特定风格的文章,有人就专门写了一个小项目生成汪峰风格的歌词.看完后有一些自己的小想法,也想做一个玩儿一玩儿.用到的原理是深度学习里 ...
- 8、Struts2 运行流程分析
1.流程分析: 请求发送给 StrutsPrepareAndExecuteFilter StrutsPrepareAndExecuteFilter 询问 ActionMapper: 该请求是否是一个 ...
- BPM费控管理解决方案分享
一.方案概述费用是除经营成本外企业的最主要支出,费用管理是财务管理的核心之一,加强企业内控管理如:费用申请.费用报销.费用分摊.费用审批.费用控制和费用支付等,通过科学有效的管理方法规范企业费用管理, ...
- mysql-5.6.34 Installation from Source code
Took me a while to suffer from the first successful souce code installation of mysql-5.6.34. Just pu ...
- Linux基础介绍【第五篇】
linux权限位 Linux文件或目录的权限位是由9个权限位来控制,每三位为一组,它们分别是文件属主权限.属组权限.其他用户权限. r:read可读权限,对应数字4: w:write可写权限,对应数字 ...
- Outfit7 庆祝其开发工作大获丰收
走不寻常路之经验总结 每位合格应用开发人员都拥有相同的目标:灵机一动,构建独创性原型,克服各种困难,最终吸引投资者将其想法推向市场. 名声.财富以及构建更多应用的机会将接踵而至. 焦虑.改善和重复是开 ...
- SpringMVC初步
SpringMVC框架介绍 1) Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面. Spring 框架提供了构建 Web 应用程序的全功 ...
- SSH隧道应用, 突破网络限制
文/怡文圣美 这篇文章可以帮你解决下面三个问题: 不能直连服务器, 要先登陆跳板机, 造成客户端工具无法连接服务器. 服务器没有公网IP, 且只允许公司IP访问, 要在家里操作要先远程桌面到工作机再登 ...