什么是事件对象?
比如当用户单击某个元素的时候,我们给这个元素注册的事件就会触发,该事件的本质就是一个函数,而该函数的形参接收一个event对象.
注:事件通常与函数结合使用,函数不会在事件发生前被执行!
不同浏览器event 对象不同 可利用 "|| " 操作符来实现兼容
比如:
div.onmousedown= function (event) { var event= event || window.event; }
不同的浏览器 ,获取鼠标在页面中x,y轴位置
body.onmousmove= function (event) { var event || window.event; var x=event.pageX || event.clientX + document.body.scrollLeft || document.documentElement.scrollLeft;
var y= event.pageY || event.clientY + document.body.scrollLeft || document.documentElement.scrollLeft; }
事件冒泡:触发子元素的事件,会影响父元素的事件触发
不同浏览器阻止事件冒泡方法不同
function stopPropagation(event) { if (event.stopPropagation) { event.stopPropagation(); //webkit } else { event.cancelBubble = true; //ie } }
获取导致事件触发的元素
function getTarget(event) { var event.target= event.target || event.srcElement; }
判断某个键盘被按下
div.onkeyup=function(event){ var event= event || window.event; alert(event.keyCode);//对应键盘生成的 Unicode 字符码
alert(event.altKey) //"ALT" 键是否被按下并保持住
alert(event.shitKey) //"SHIFT" 键是否被按下并保持住
}