1、跨浏览器添加事件- H/ ~5 f% X1 b* {# H1 q
//跨浏览器添加事件
function addEvent(obj,type,fn){
if(obj.addEventListener){
obj.addEventListener(type,fn,false);
}else if(obj.attachEvent){//IE
obj.attchEvent('on'+type,fn);
}
} 2、跨浏览器移除事件
0 C1 m* t: O' ^3 a- D//跨浏览器移除事件
function removeEvent(obj,type,fn){
if(obj.removeEventListener){
obj.removeEventListener(type,fn,false);
}else if(obj.detachEvent){//兼容IE
obj.detachEvent('on'+type,fn);
}
} 3、跨浏览器阻止默认行为+ ?& \8 J$ S1 n( P
//跨浏览器阻止默认行为
function preDef(ev){
var e = ev || window.event;
if(e.preventDefault){
e.preventDefault();
}else{
e.returnValue =false;
}
} 4、跨浏览器获取目标对象: a# d! o8 u+ F( l/ H& E Z3 q3 f
//跨浏览器获取目标对象
function getTarget(ev){
if(ev.target){//w3c
return ev.target;
}else if(window.event.srcElement){//IE
return window.event.srcElement;
}
} 5、跨浏览器获取滚动条位置! k" Q1 ~+ P0 C, B. j3 j3 e1 X' j
//跨浏览器获取滚动条位置,sp == scroll position
function getSP(){
return{
top: document.documentElement.scrollTop || document.body.scrollTop,
left : document.documentElement.scrollLeft || document.body.scrollLeft;
}
} 6、跨浏览器获取可视窗口大小
" h; k1 H. @& C3 h# |+ `4 x7 }( 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
}
}
}, / r# z+ ?4 ~: s6 _/ {5 G# n5 ?
3 T0 j* n O5 Y5 |) X. ]2 M) f
|