javascript下兼容都有哪些

1.event 事件

function move(ev){

  var oEvent = ev || event;  //前者ie     后者event是ff 谷歌

}

attachEvent添加绑定事件ie支持    addEventListener兼容其他浏览器

var oDiv = document.getElementById("div1");

  oDiv.attachEvent("onclick",function(){//第一参数为事件  第二个参数为 函数

  alert("a");

});

var oDiv = document.getElementById("div1");

  oDiv.addEventListener("click",function(){//第一参数为事件  第二个参数为 函数 第三个参数是 :false冒泡/true捕捉  

  alert("a");

});

兼容写法 封装:

function addEvent(obj,ev,fn)

{

  if(obj.attachEvent)

  {
    obj.attachEvent("on"+ev,fn);

  }else{

    obj.addListener(ev,fn,false);

  }

}

阻止冒泡 兼容写法:

function stopBulling(ev)

{

  var oEvent = ev || event;

  if(oEvent.stopPropagation)//ie不兼容

  {

    oEvent.stopPropagation();

  }else{

    event.cancelBubble = true;//ff 谷歌使用

  }

}

获取事件目标对象

var outer = document.getElementById("outer");

outer.onclick = function(ev)

{

  var oEvent = ev || event;

  var targetElement = oEvent.target || oEvent.srcElement;//和this差不多 前者ff 谷歌 ,后者ie

}

阻止浏览器默认行为:

if(oEvent.preventDefault)

{

  oEvent.preventDafault(); //非ie

}else{

  oEvent.returnValue  = false;//ie浏览器

}

2.document.getElementByClassName 取标签 ie不支持

3.获取非IE窗口scrollTop 通过 document.body.scrollTop

  获取ie窗口scrollTop 通过 document.documentElement.scrollTop

原文地址:https://www.cnblogs.com/mingjixiaohui/p/5246850.html