兼容问题

关于浏览器兼容之前碰到许多,今天把遇到的全部想一想,总结一下

1.获取事件对象(IE和火狐)。

1
var ev = e||event;       (IE有window.event对象)

2.获取事件源(IE和火狐)

1
var sr = ev.srcElement||ev.srcTarget;            (IE用srcElement获取事件源,而FF用srcTarget获取事件源)

3.关于获取标签的自定义属性(IE和火狐)
IE:div.value或者div[‘value’]
火狐:div.getAttribute(‘value’)

4.滚动轴高度

1
var top = document.documentElement.scrollTop || document.body.scrollTop;

safari里面是window.pageYOffset来实现scrollTop

5.窗口大小(宽高)

1
2
window.innerWidth和window.innerHeight         //其他浏览器和IE9
document.body.clientWidth和document.body.clientHeight //IE

6.窗口位置

1
2
var leftX = typeof window.screenLeft == 'number' ? window.screenLeft : window.screenX;
ver topY = typeof window.screenTop == 'number' ? window.screenTop : window.screenY;

坚持原创技术分享,您的支持将鼓励我继续创作!