JavaScript(7)——事件2.0
事件
【事件类型】
不同的事件类型具有不同的信息。
【UI事件】
指的是那些不一定与用户操作有关的事件。当用户与页面上的元素交互时触发。
load事件:当页面完全加载后,就会 触发window 上面的load事。
unload事件:这个事件在文档被完全卸载后触发。利用这个事件最多的情况是清除引用。
resize事件:当浏览器窗口被调整到一个新的高度或宽度时,就会触发resize事件。浏览器窗口最大化或者最小化时也会触发resize事件。
scroll事件:是在window对象上发生的,但是它实际表示的则是页面相应元素的变化。scroll事件也会在文档被滚动期间重复被触发。
【焦点事件】
在页面元素获得或者失去焦点时触发。利用这些事件并与document.hasFocus()方法及document.activeElement属性配合,可以知晓用户在页面上的行踪。
【鼠标与滚轮事件】
click:单击主鼠标时触发;
dblclick:双击主鼠标时触发;
mousedown:按下任意鼠标按钮时触发;
mouseenter:鼠标光标从元素外部首次移动到元素范围之内时触发;
mouseleave:在位于元素上方的鼠标光标移动到元素范围之外时触发;
mousemove:当鼠标指针在元素内部移动时重复地触发;
mouseout:在鼠标指针位于一个元素上方,然后用户将其移入另一个元素时触发;
mouseover:在鼠标指针位于一个元素外部,然后用户将其首次移入另一个元素边界之内时触发;
mouseup:释放鼠标按钮时触发。
【键盘与文本事件】
对键盘事件的支持主要遵循的是DOM0级。
keydown:按下键盘任意键时触发,而且如果按住不放的话,会重复触发此事件。
keypress:按下键盘上的字符键时触发,而且如果按住不放的话,会重复触发此事件。按下Esc键也会触发此事件。
keyup:释放键盘上的键时触发。
文本事件:textInput。这个事件是对keypress的补充,用意是在将文本显示给用户之前更容易拦截文本。在文本插入文本框之前会触发textInput事件。
【复合事件】
复合事件,用于处理IME的输入序列。IME(输入法编辑器)可以让用户输入在物理键盘上找不到的字符。通常需要按住多个键,但最终只输出一个字符。
compositionstart:在IME的文本复合系统打开时触发,表示要开始输入了;
compositionupdate:在向输入字段中插入新字符时触发。
compositionend:在IME的文本复合系统关闭时触发,表示返回正常键盘输入状态。
【变动事件】
DOM2级的变动事件能在DOM中的某一部分发生变化时给出提示。
删除节点:使用removeChild()和replaceChild()从DOM中删除节点。
插入节点:使用appendChild()、replaceChild()或insertBefore()方法向DOM中插入节点。
【HTML5事件】
HTML5详尽列出了浏览器应该支持的所有文件。
contextmenu事件:冒泡;用以表达何时应该显示上下文菜单,以便开发人员取消默认的上下文菜单而提供自定义的菜单。
beforeunload事件:让开发人员有可能在页面卸载前组织这一操作。将控制权交给用户。
DOMContentLoaded事件:支持在页面下载的早起添加事件处理程序。用户能够尽早地与页面进行交互。
readystatechane事件:其目的是提供与文档或元素加载状态有关的信息,支持readystatechane事件的每个对象都有一个readyState属性。包括uninitialized(未初始化),loading(正在加载),loaded(加载完毕),interactive(交互),complete(完成)这五个值。
【内存和性能】
事件委托:对“事件处理程序过多”问题的解决方案。利用了事件冒泡,只指定一个事件处理程序,就可以管理某一类型所有事件。
移除事件处理程序:
空事件处理程序:一种情况就是从文档中移除带有事件处理程序的元素。另一种是在卸载页面的时候。
【事件模拟】
模拟触发事件。有模拟鼠标事件、模拟键盘事件。IE有它自己的模拟事件的方式。
JavaScript(7)——事件2.0的更多相关文章
- jQuery $(document).ready()和JavaScript onload事件
jQuery $(document).ready()和JavaScript onload事件 Why we need a right time? 对元素的操作和事件的绑定需要等待一个合适的时机,可以看 ...
- Javascript事件模型系列(四)我所理解的javascript自定义事件
被我拖延了将近一个月的javascript事件模型系列终于迎来了第四篇,也是我计划中的最后一篇,说来太惭愧了,本来计划一到两个星期写完的,谁知中间遇到了很多事情,公司的个人的,搞的自己心烦意乱浮躁了一 ...
- javascript通用事件封装
随着最近几年Html5的兴起,越来越多的应用采用html5进行实现,一个优秀的网页应用不但需要美观简洁的UI界面,更需要一个良好的交互.网页应用大部分的交互需要用javascript事件进行实现.虽然 ...
- JavaScript中事件绑定的方法总结
最近收集了一些关于JavaScript绑定事件的方法,汇总了一下,不全面,但是,希望便于以后自己查看. JavaScript中绑定事件的方法主要有三种: 1 在DOM元素中直接绑定 2 JavaScr ...
- JavaScript的事件监听、捕获和冒泡
在前端开发中,我们经常需要对某些事件进行监听.这样只要在指定的元素上触发了该事件,就会执行一个回调函数来进行相关的操作. 而JavaScript中事件监听的方法总共有三种,分别如下: element. ...
- javascript之事件绑定
曾经写过一篇随笔,attachEvent和addEventListener,跟本文内容有很多相似之处 本文链接:javascript之事件绑定 1.原始写法 <div onclick=" ...
- JavaScript键盘事件全面控制代码
JavaScript键盘事件全面控制,它可以捕获键盘事件的输入状态,可以判断你敲打了键盘的那个键,ctrl.shift,26个字母等等,返回具体键盘值. <html> <head&g ...
- Javascript知识——事件
O(∩_∩)O~~又是新的一周开始了,今天还是在继续学习Javascript知识,今天主要讲了事件的知识.现在就总结下吧. 事件 事件一般是用于浏览器和用户操作进行交互.最早是 IE 和 Netsca ...
- 理解的javascript自定义事件
理解的javascript自定义事件 被我拖延了将近一个月的javascript事件模型系列终于迎来了第四篇,也是我计划中的最后一篇,说来太惭愧了,本来计划一到两个星期写完的,谁知中间遇到了很多事情, ...
- 走进javascript——DOM事件
DOM事件模型 在0级DOM事件模型中,它只是简单的执行你为它绑定的事件,比如你为某个元素添加了一个onclick事件,当事件触发时,它只是去调用我们绑定的那个方法,不再做其他的操作. 在2级DOM事 ...
随机推荐
- 【Time系列一】datetime的妙用
今天在弄个自动关机小脚本的时候,遇到了时间转换的问题,也难怪,以前没学过, 不能怪我不会哦! 首先,先学会打印出当前时间的几种方式 参考开源社区: http://my.oschina.net/u/1 ...
- 窗口信息获取器 Spy4Win v0.20b 中文绿色版
软件名称:窗口信息获取器 Spy4Win v0.20b 中文绿色版软件类别:国产软件运行环境:Windows XP软件语言:简体中文授权方式:免费版软件大小:1.67 MB软件等级:整理时间:2012 ...
- x264 亮度信号8x8帧内预测模式
1 该模式的8个预测方向与4x4帧内预测模式一样. 2 该模式只有High profile及更高的Profile的才有可能使用,Baseline.Main Profile.Preset为ultrafa ...
- tableView区头不显示
不知道什么原因 如果设置tableView的样式为Group 则必须写代理 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo; co ...
- javascript静态页面传值的三种方法分享
一:JavaScript静态页面值传递之URL篇能过URL进行传值.把要传递的信息接在URL上.Post.htm 复制代码 代码如下: <input type="text" ...
- C# 从零开始 vol.2
这是第二篇 1:命名空间 命名空间可以理解成类的文件夹,这个命名空间中存放着各种类,当你需要使用到对应的类的时候,就需要导入命名空间后才能使用. 引用:可以理解成添加新的存放类的文件夹,也就是一个项目 ...
- FileZilla客户端源码解析
FileZilla客户端源码解析 FTP是TCP/IP协议组的协议,有指令通路和数据通路两条通道.一般来说,FTP标准命令TCP端口号是21,Port方式数据传输端口是20. FileZilla作为p ...
- oracle之nomount、mount、open三种状态
1.先来看下外国网站上的资料怎么说 Nomount – The database instance has been started (processes and memory structures ...
- 郑州尚学堂:如何看待ARM的各种模式?
嵌入式设备已经越来越与我们的日常生活密切相关了,由此带来了ARM的高速发展.就拿我们的手机来说吧,几乎所有的手机都是ARM体系的.这里大致介绍下ARM 的7种执行模式. ARMv4以上版本的CPU任何 ...
- PHP中date函数月和日带0问题
一.带零 echo date('Y-m-d'); 2012-08-08 二.不带零 echo date('Y-n-j'); 2012-8-8 以下为参数详解(转载): a - "am&q ...