电话:0731-83595998
导航

Firefox浏览器兼容Javascript脚本的方法

来源: 2017-12-19 15:32

   遇到了FireFox和IE脚本不兼容的问题
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错误。考试吧编辑整理

编辑推荐:

下载Word文档

温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)

网络课程 新人注册送三重礼

已有 22658 名学员学习以下课程通过考试

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

最新评论

点击加载更多评论>>

精品课程

更多
10781人学习

免费试听更多

相关推荐
图书更多+
  • 电网书籍
  • 财会书籍
  • 其它工学书籍
拼团课程更多+
  • 电气拼团课程
  • 财会拼团课程
  • 其它工学拼团
热门排行

长理培训客户端 资讯,试题,视频一手掌握

去 App Store 免费下载 iOS 客户端