作家
登录

Firefox和IE浏览器兼容JS脚本写法小结

作者: 来源:www.28hudong.com 2013-03-30 03:01:04 阅读 我要评论

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错误

  推荐阅读

  点图片上一页下一页翻页效果

<script language="javascript" defer> var zhang=2 function next(){ if(zhang==7){ alert("这已经是最后一张了!") zhang=6 } document.getElementById("tu").src=zhang+".jpg" text.innerHTML="当前是第"+zhang+>>>详细阅读


本文标题:Firefox和IE浏览器兼容JS脚本写法小结

地址:http://www.17bianji.com/kaifa2/JS/29543.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)