// js瀏覽器兼容問題

//1.兼容點擊事件
function addEvent(dom,type,fn){
  //對於支持DOM2級事件處理程序addEventListener方法的瀏覽器
  if(dom.addEventListener){
  dom.addEventListener(dom,type,fn);
  }else if{
  //對於不支持addEventListener方法但支持attachEvent方法的瀏覽器
  dom.attachEvent('on'+type,fn);
  }else{
  //對於不支持addEventListener方法也不支持attachEvent方法,但支持on+'事件名'的瀏覽器
  dom['on'+type]=fn;
  }
}
//調用
var myInput=document.getElementById('myinput');
addEvent(myInput,'click',function(){})

//2.針對IE低版本瀏覽器不兼容e.preventDefault()和e.target的問題;
//獲取事件
var getEvent=function(event){
//標準瀏覽器返回event,IE下window.event
  return event||window.event;
}
//獲取元素
var getTarget=function(event){
var event=getEvent(event);
//標準瀏覽器下event.target,IE下event.srcElement
  return event.target||event.srcElement;
}

//阻止默認行爲
var preventDefault=function(event){
  var event=getEvent(event);
  if(event.preventDefault){
  //標準瀏覽器
event.preventDefault();
  }else{
  //IE瀏覽器
  event.returnValue=false;
  }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章