js中的事件是什么
(⼀)事件
1、什么是事件
是指⽤户在某事务上由于某种⾏为所执⾏的操作; (对页⾯元素的某种操作)
事件是⽂档或者浏览器窗⼝中发⽣的,特定的交互瞬间。
事件是⽤户或浏览器⾃⾝执⾏的某种动作,如click,load和mouover都是事件的名字。
事件是javaScript和DOM之间交互的桥梁。
2、事件的三要素
事件源:是指在哪个元素引发的事件,如:a标签、div标签
事件:事件是指执⾏的动作
如:单击、双击等
事件驱动程序(事件处理程序):即执⾏的结果
如:单击button标签所执⾏的函数
3、event
1、event对象,被称为事件对象。
因此它只会在发⽣⼀个事件时可⽤。不同的事件产⽣的事件对象不同
存在兼容 :
在IE中,获取event对象:
lick = function(){
alert(window.event);
}
在⾮IE浏览器,获取event对象,⽤传参的⽅式:
lick = function(e){
console.log(e)
兼容问题 : e = e || window.event
}
2、event.button属性介绍
button属性 : ⽤来确认⽤户操作的是左键 滚轮 右键
左键 0,滚轮 1,右键 2
3、 event.clientX、event.clientY event.pageX、event.pageY event.offtX、event.offtY
event.clientX、event.clientY
⿏标相对于浏览器窗⼝可视区域的X,Y坐标(窗⼝坐标),可视区域不包括⼯具栏和滚动条
event.pageX、event.pageY
它们使⽤的是⽂档坐标⽽⾮窗⼝坐标,也就是⿏标到页⾯的距离
event.offtX、event.offtY
⿏标到盒⼦本⾝的距离
4、键盘事件
1、键盘事件分类
1)onkeydown :键盘按下触发事件,功能键也能识别(shift / ctrl / alt);不能识别⼤⼩写;
2)onkeyup : 键盘弹起触发事件;也能识别功能键 不能识别⼤⼩写
3)onkeypress:键盘按下触发事件,不能识别功能键的keyCode;能识别⼤⼩写;
2、组合键ctrlKey、altKey
ctrlKey 事件属性可返回⼀个布尔值,指⽰当事件发⽣时,Ctrl 键是否被按下
altKey 事件属性返回⼀个布尔值。指⽰在指定的事件发⽣时,Alt 键是否被按下
3、keyCode/which兼容
keyCode/which 获取键盘的按键值
IE8 及其更早版本不⽀持 which 属性。不⽀持的浏览器可使⽤ 属性。但是, keyCode 属性在 Firefox 浏览器的 onkeypress 事件中是⽆效的。 兼容这些浏览器你可以使⽤以下代码
var x = event.which || event.keyCode; 使⽤ which 或 keyCode, 这样可⽀持不同浏览器
注意: 在onkeypress事件中, 如果按住ctrl + 回车 ,此时,回车键的keyCode的值为10
(⼆)事件流参考
(三)事件处理程序和IE事件处理程序参考
(四)事件对象参考
(五)事件对象的公共成员参考
(六)⿏标事件参考