1、跨浏览器添加事件& l$ I& {% S) w" x% C& s
//跨浏览器添加事件
function addEvent(obj,type,fn){
if(obj.addEventListener){
obj.addEventListener(type,fn,false);
}else if(obj.attachEvent){//IE
obj.attchEvent('on'+type,fn);
}
} 2、跨浏览器移除事件+ x: U, f& v# T* R; _( K
//跨浏览器移除事件
function removeEvent(obj,type,fn){
if(obj.removeEventListener){
obj.removeEventListener(type,fn,false);
}else if(obj.detachEvent){//兼容IE
obj.detachEvent('on'+type,fn);
}
} 3、跨浏览器阻止默认行为0 [) t' U. S' n4 g' Y
//跨浏览器阻止默认行为
function preDef(ev){
var e = ev || window.event;
if(e.preventDefault){
e.preventDefault();
}else{
e.returnValue =false;
}
} 4、跨浏览器获取目标对象 D+ {- H6 b. g" f; |1 `. L3 N+ F
//跨浏览器获取目标对象
function getTarget(ev){
if(ev.target){//w3c
return ev.target;
}else if(window.event.srcElement){//IE
return window.event.srcElement;
}
} 5、跨浏览器获取滚动条位置
8 I3 s- T0 ~5 @' C//跨浏览器获取滚动条位置,sp == scroll position
function getSP(){
return{
top: document.documentElement.scrollTop || document.body.scrollTop,
left : document.documentElement.scrollLeft || document.body.scrollLeft;
}
} 6、跨浏览器获取可视窗口大小& H) H& g l& O+ s8 y' R5 W" u& A' q+ ~
//跨浏览器获取可视窗口大小
function getWindow () {
if(typeof window.innerWidth !='undefined') {
return{
width : window.innerWidth,
height : window.innerHeight
}
} else{
return {
width : document.documentElement.clientWidth,
height : document.documentElement.clientHeight
}
}
},
. z3 n% z8 B* c" ~
( h3 @2 d8 P# I) ] |