btn.onclick = function (event) {
// event 就是事件对象
var e = event || window.event; // window.event是兼容低版本IE的写法
}
event 常见属性
属性 | 用途 |
---|---|
clientX | 光标相对于该网页的水平位置 |
clientY | 光标相对于该网页的垂直位置 |
type | 事件的类型 |
target | 该事件被传送到的对象 |
screenX | 光标相对于该屏幕的水平位置 |
screenY | 光标相对于该屏幕的垂直位置 |
pageX | 光标相对于该网页的水平位置(IE6,7,8不适用) |
pageY | 光标相对于该网页的垂直位置(IE6,7,8不适用) |
width | 该窗口或框架的宽度 |
height | 该窗口或框架的高度 |
data | 返回拖拽对象的 URL 字符串 |
javascript 事件传递机制(冒泡)
- js事件会从事件源(比如被点击的a标签)沿着
DOM树
一层层向上传递
注: 不是所有的事件都能冒泡,比如 :
blur
focus
load
unload
阻止冒泡
- 标准浏览器
event.stopPropagation();
- IE
event.cancelBubble = true;
- 兼容写法
function stopBubble(event) {
// w3c标准
if (event && event.stopPropagation) {
event.stopPropagation()
}else{
// IE浏览器
event.cancelBubble = true;
}
}