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树一层层向上传递
注: 不是所有的事件都能冒泡,比如 :
blurfocusloadunload
阻止冒泡
- 标准浏览器
event.stopPropagation();
- IE
event.cancelBubble = true;
- 兼容写法
function stopBubble(event) {
// w3c标准
if (event && event.stopPropagation) {
event.stopPropagation()
}else{
// IE浏览器
event.cancelBubble = true;
}
}