event对象及各种事件
事件(event)
event对象
(1)什么是event对象?
Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。事件通常与函数结合使用,函数不会在事件发生前被执行!
(2)Event相关方法与属性
1、谷歌 event.stopPropagation()、IE event.CancelBubble=true:终止事件在传播过程的捕获、目标处理或起泡阶段进一步传播。调用该方法后,该节点上处理该事件的处理程序将被调用,事件不再被分派到其他节点
2、谷歌 event.preventDefault()、IE event.returnvalue=false :取消事件的默认动作(a标签的href)。
3、event.clientX、event.clientY:鼠标相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条。IE事件和标准事件都定义了这2个属性
4、event.offsetX、event.offsetY:鼠标相对于事件源元素(触发事件的元素)的X,Y坐标,只有IE事件有这2个属性,标准事件没有对应的属性。 与event.offsetLeft、event.offsettop一样。
5、event.screenX、event.screenY:鼠标相对于用户显示器屏幕左上角的X,Y坐标。标准事件和IE事件都定义了这2个属性。
6、event.keyCode:获得按键的code值。例:我们在程序里是怎么知道我们是按得哪个键呢,我们可以通过keyCode获得,程序员早在一开始就把键盘上的每一个键定义了一个code,在程序里我们可以判断值来知道我们点击了哪个键。
1.鼠标事件,页面所有元素都可触发
click:当用户单击鼠标按钮或按下回车键时触发。
input.onclick = function () {
alert('Lee');
};
dblclick:当用户双击主鼠标按钮时触发。
input.ondblclick = function () {
alert('Lee');
};
mousedown:当用户按下了鼠标还未弹起时触发。
input.onmousedown = function () {
alert('Lee');
};
mouseup:当用户释放鼠标按钮时触发。
input.onmouseup = function () {
alert('Lee');
};
mouseover(mouseenter 这种方法不冒泡):当鼠标移到某个元素上方时触发。
input.onmouseover = function () {
alert('Lee');
};
mouseout(mouseleaver 这种方法不冒泡):当鼠标移出某个元素上方时触发。
input.onmouseout = function () {
alert('Lee');
};
mousemove:当鼠标指针在元素上移动时触发。
input.onmousemove = function () {
alert('Lee');
};
2.键盘事件
keydown:当用户按下键盘上任意键触发,如果按住不放,会重复触发。
onkeydown = function () {
alert('Lee');
};
keypress:当用户按下键盘上的字符键触发,如果按住不放,会重复触发。
onkeypress = function () {
alert('Lee');
};
keyup:当用户释放键盘上的键触发。
onkeyup = function () {
alert('Lee');
};
3.HTML事件
load:当页面完全加载后在window上面触发,或当框架集加载完毕后在框架集上触发。
window.onload = function () {
alert('Lee');
};
unload:当页面完全卸载后在window上面触发,或当框架集卸载后在框架集上触发。
window.onunload = function () {
alert('Lee');
};
select:当用户选择文本框(input或textarea)中的一个或多个字符触发。
input.onselect = function () {
alert('Lee');
};
change:当文本框(input或textarea)内容改变且失去焦点后触发。
input.onchange = function () {
alert('Lee');
};
focus:当页面或者元素获得焦点时在window及相关元素上面触发。
input.onfocus = function () {
alert('Lee');
};
blur:当页面或元素失去焦点时在window及相关元素上触发。
input.onblur = function () {
alert('Lee');
};
submit:当用户点击提交按钮在<form>元素上触发。
form.onsubmit = function () {
alert('Lee');
};
reset:当用户点击重置按钮在<form>元素上触发。
form.onreset= function () {
alert('Lee');
};
resize:当窗口或框架的大小变化时在window或框架上触发。
window.onresize = function () {
alert('Lee');
};
scroll:当用户滚动带滚动条的元素时触发。
window.onscroll = function () {
alert('Lee');
};
event对象及各种事件的更多相关文章
- javascript事件与event对象的属性
javascript事件列表解说 事件 浏览器支持 解说 一般事件 onclick IE3.N2 鼠标点击时触发此事件 ondblclick IE4.N4 鼠标双击时触发此事件 onmousedown ...
- javascript 事件对象(event 对象)
原文: http://www.cnblogs.com/songyaqi/p/5204143.html <html> <head> <title> Track Mou ...
- Javascript防冒泡事件与Event对象
防冒泡 防冒泡用到的就是event的属性和方法 function add2shop(e) { if (!e) var e = window.event; e.cancelBubble = true; ...
- javascript高级程序设计---Event对象
事件是一种异步编程的实现方式,本质上是程序各个组成部分之间传递的特定消息. DOM的事件操作(监听和触发),都定义在EventTarget接口 该接口就是三个方法,addEventListener和r ...
- window.event对象详尽解析
event代表事件的状态,例如触发event对象的元素.鼠标的位置及状态.按下的键等等. event对象只在事件发生的过程中才有效. event的某些属性只对特定的事件有意义.比如,fromEleme ...
- JS的event对象--知识点总结
Event描述:event代表事件的状态,例如触发event对象的元素.鼠标的位置及状态.按下的键等等. 需要注意的是:event对象只在事件发生的过程中才有效. event的某些属性只对特定的事件有 ...
- event 对象 小记
event对象的属性提供了有关事件的细节并且通过event对象的方法,可以控制事件的继续传播和阻止事件的默认行为 2级DOM Events 标准定义了一个标准的事件模型 被除了IE外的所有现代浏览器 ...
- JS中的event 对象详解
JS中的event 对象详解 JS的event对象 Event属性和方法:1. type:事件的类型,如onlick中的click:2. srcElement/target:事件源,就是发生事件的 ...
- (转)javascript中event对象详解
原文:http://jiajiale.iteye.com/blog/195906 javascript中event对象详解 博客分类: javaScript JavaScriptCS ...
随机推荐
- LeetCode 格雷码序列的生成
问题概述:在一组数的编码中,若随意两个相邻的代码仅仅有一位二进制数不同.则称这样的编码为格雷码. 2位数的格雷码序列:00 : 001 : 111 : 310 : 2找规律:假设要求n位的格雷码,先要 ...
- rabbitMq视频教程
http://edu.51cto.com/index.php?do=lesson&id=83136
- Android基于UDP的局域网聊天通信
代码地址如下:http://www.demodashi.com/demo/12057.html 记得把这几点描述好咯:代码实现过程 + 项目文件结构截图 + 演示效果 1. 开发环境 1.1 开发工具 ...
- Linux下lvm在线扩容步骤
转 :https://jingyan.baidu.com/article/25648fc18f22b29191fd0011.html 图片看不清可以看原文 LVM是逻辑盘卷管理(Logical Vol ...
- xcode,不要将.a文件拖到xcode里
如果将.a文件拖到xcode里,它自动生成的search path是错的.导致奇怪的编译错误,非常坑.这是xcode的一个bug. 或者为了省事直接将.a拖进xcode也行,但记着去Library S ...
- NIO之直接缓冲区与非直接缓冲区
直接缓冲区与非直接缓冲区的概念 一.非直接缓冲区 1)创建方式 通过 static ByteBuffer allocate(int capacity) 创建的缓冲区,在JVM中内存中创建,在每次调用基 ...
- vivado与modelsim的联合仿真(一)
vivado软件中也自带仿真工具,但用了几天之后感觉仿真速度有点慢,至少比modelsim慢挺多的.而modelsim是我比较熟悉的一款仿真软件,固然选它作为设计功能的验证.为了将vivado和mod ...
- java编译器特性
1.当一个表达式两边都是字面量,则编译过程中就会进行计算,并将结果生成在表达式的位置,以节省运算效率: ps:jvm认为只有是字面量时,才会对比常量池中内容:而如果是new的新对象为不同对象. 例1: ...
- SpringMVC学习(一)小demo
首先看一下整个demo的项目结构: 第一步是导入Spring MVC单独使用时的最少jar包: 第二步在项目的web.xml中配置Spring MVC提供的拦截请求的Servlet: 全类名是:org ...
- linux下独立core2.1部署发布过程
1.vs2017独立发布.linux-64 2.winscp上传到当前用户下面.ubuntu tsl64来讲 3.超级用户sudo su 4.zip解压缩 uzip xxx.zip -d ../../ ...