1. 事件执行过程
事件捕获过程:当我们点击 TEXT 时,首先是 window -> document -> body -> div -> text.这个过程称为事件捕获,W3C 浏览器的标准执行流程。
事件冒泡过程:text -> div -> body -> document -> window.这个过程称为事件冒泡。IE 浏览器只支持冒泡,不支持捕获。W3C 浏览器先执行捕获,后执行冒泡
2. 获取元素位置
1、通过元素的 offsetLeft 和 offsetTop
dom元素的offsetLeft、offsetTop 指的是元素相对于其offseParent 指定的坐标来说的。
offsetParent:是指当前元素最近的经过定位的父级元素,如果没有则一直向上 直至 body。注意当前元素为 fixed 时,其 offsetParent 的值为 null
2、event.clientX 和 event.clientY
事件相对于浏览器窗口的水平和垂直距离
3、getBoundingClientRect
方法返回一个矩形对象,包含四个属性:left、top、right 和 bottom。分别表示元素各边与页面上边和左边的距离
3. 绑定事件和解除事件的区别
1、事件绑定
定义:一个事件可以加多次,且不会覆盖
2、绑定方法
(1)attachEvent ('on+事件名',函数名) 这个只兼容 ie 6-8
(2)addEventListener (事件名,函数