1. 坐标
// o c p s
offsetX //当前被点击的点到该元素的 左或上的边距clientX //当前点到可视区的距离pageX //当前点到整个页面的 区域(包括不可见区域)的距离screenX //当前点到屏幕的距离
2. 事件具传递性,有冒泡与捕获
冒泡,从里到外传递捕获,从外到内传递
取消事件冒泡
//可以通过下述两个方法取消事件冒泡 if(e.stopPropagation){ e.stopPropagation(); }else{ e.cancelBubble = true };
-
阻止浏览器默认行为方式一
if (e.preventDefault) { e.preventDefault(); //非IE } else { e.returnValue = false; // IE }
阻止浏览器默认行为方式二
return false;
-
获取style样式
if(window.getComputedStyle) { style = window.getComputedStyle(box, null); //支持IE9+及非IE浏览器} else { style = box.currentStyle; // IE8及以前}
-
封装事件监听器, 兼容IE浏览器, 谷歌, 火狐
//添加事件
function addEvent(obj, type, fn, useCapture){ if (obj.addEventListener) { obj.addEventListener(type, fn, useCapture); } else { obj.attachEvent("on"+type, fn); }}