js常见的兼容
市场上浏览器的种类很多,不同的浏览器内核也都不近相同,因此浏览器对网页的解析也存在一定的差异,浏览器内核主要分为两种:一种是渲染引擎,一种是js 引擎
// 1,获取滚动条滚动的距离
var Stop = document.documentElement.strollTop || document.body.scrollTop
//2,获取非行间样式
IE: currentStyle[arr]
标准: getComputedStyle[arr]
function getStyle(obj,attr){
if(obj.currentStyle){
return obj.currentStyle[attr]
}else{
return getComputedStyle(obj,false)[attr]
}
}
//3,获取事件对象
var e = e || event
//4,获取键盘信息
e.keyCode || e.which
//5,阻止浏览器默认行为
e.preventDefault?e.preventDefault():e.returnValue = false;
function prevent(){
if(e.preventDefault){
e.preventDefault();
}else{
e.returnValue = false;
}
}
//6,阻止事件冒泡;
e.stopPropagation?e.stopPropagation():e.cancelBubble = true;
//7,事件监听
addEventListener()
addEvent()
//8,事件解绑
removeEventListener()
datachEvent()
//9,获取事件源
e.target || e.srcElement;
//10,ajax 兼容
var xhr = new XMLHttpRequest() || new ActiveXObject("Microsoft,XMLHTTP")