1. gzyueqian
      13352868059
      首頁 > 新聞中心 > > 正文

      Firefox瀏覽器兼容Javascript腳本的方法

      更新時間: 2008-07-02 09:28:29來源: 粵嵌教育瀏覽量:1110

        遇到了FireFox和IE腳本不兼容的問題

        1.window.event兼容腳本

       

       

      function getEvent(){ //獲取瀏覽器事件,同時兼容ie和ff的寫法
                  if(document.all) return window.event;
                  func=getEvent.caller;
                  while(func!=null){
                  var arg0=func.arguments[0];
                  if(arg0){
                  if((arg0.constructor==Event    arg0.constructor ==MouseEvent)
                     (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)){
                  return arg0;
                  }
                  }
                  func=func.caller;
                  }
                  return null;
                  }
        每次用事件之前Firefox都需要用getEvent()獲取一下,否則就是空

        2.屏蔽Form提交事件
       

       

       

      event.returnValue=false;// for IE
                  evt.preventDefault();//for firefox
        3.獲取事件源
       

       

       

      var source=event.srcElement //IE
                  var source=event.target //firefox
        4.添加事件兼容寫法
       
      function addEvent(oElement,sEvent,func){
                  if (oElement.attachEvent){
                  oElement.attachEvent(sEvent,func);
                  }
                  else{
                  sEvent=sEvent.substring(2,sEvent.length);
                  oElement.addEventListener(sEvent,func,false);
                  }
                  }
        用法:addEvent(window,"onload",Start);

        5.Firefox注冊innerText寫法
       

       

       

      //注冊firefox innerText
                  HTMLElement.prototype.__defineGetter__("innerText",
                  function(){
                  var anyString = "";
                  var childS = this.childNodes;
                  for(var i=0; i if(childS[i].nodeType==1)
                  anyString += childS[i].tagName=="BR" ? '\n' : childS[i].innerText;
                  else if(childS[i].nodeType==3)
                  anyString += childS[i].nodeValue;
                  }
                  return anyString;
                  }
                  );
                  HTMLElement.prototype.__defineSetter__("innerText",
                  function(sText){
                  this.textContent=sText;
                  }
                  );
        6.長度:FireFox長度必須加“px”,IE無所謂

        7.父控件下的子控件:IE是“children”,FireFox是“childNodes”

        8.XmlHttp

        在IE中,XmlHttp.send(content)方法的content可以為空,而firefox則不能為空,應該用send(" "),否則會出現411錯誤。






      免費預約試聽課

      亚洲另类欧美综合久久图片区_亚洲中文字幕日产无码2020_欧美日本一区二区三区桃色视频_亚洲AⅤ天堂一区二区三区

      
      

      1. 最新永久免费在线视频 | 五月天在线精品电影 | 欧美亚洲国产aⅴ人妖 | 色综合久久婷婷88 | 午夜一区二区亚洲福利VR | 三上悠亚AV福利在线观看 |