浏览器兼容心得.docx_第1页
浏览器兼容心得.docx_第2页
浏览器兼容心得.docx_第3页
浏览器兼容心得.docx_第4页
浏览器兼容心得.docx_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

css部分:IE6 IE7 IE8 Firefox Chrome Safari!important Y Y _ Y * Y Y *+ Y 9 Y Y Y 0 Y nth-of-type(1) Y Y示例代码:#testcolor:red; /* 所有浏览器都支持 */color:red !important;/* Firefox、IE7支持 */_color:red; /* IE6支持 */*color:red; /* IE6、IE7支持 */*+color:red; /* IE7支持 */color:red9; /* IE6、IE7、IE8支持 */color:red0; /* IE8支持 */body:nth-of-type(1) pcolor:red; /* Chrome、Safari支持 */1、CSS透明IE:filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=60)FF:opacity:0.62、cursor:hand VS cursor:pointerFF不支持hand,但ie支持pointer解决方法: 统一使用pointer3、padding 问题padding 5px 4px 3px 1px FireFox无法解释简写,必须改成 padding-top:5px; padding-right:4px; padding-bottom:3px; padding-left:1px;4、消除ul/ol等列表的缩进时样式应写成:list-style:none;margin:0px;padding:0px;其中margin属性对IE有效,padding属性对FireFox有效5、CSS圆角IE:不支持圆角FF: -moz-border-radius:4px,或者-moz-border-radius-topleft:4px;-moz-border- radius-topright:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius- bottomright:4px;6、CSS双线凹凸边框IE:border:2px outset;FF: -moz-border-top-colors: #d4d0c8 white;-moz-border-left-colors: #d4d0c8 white;-moz-border-right-colors:#404040 #808080;-moz-border-bottom-colors:#404040 #808080;7、table边框.ctb border-top: 1px solid #3E4093;border-left: 1px solid #3E4093;border-right: 0px;border-bottom: 0px;.ctb tdborder-top: 1px solid #F4F4FF;border-left: 1px solid #F4F4FF;border-right: 1px solid #3E4093;border-bottom: 1px solid #3E4093;-js部分:1、window.eventfunction gotoSubmit(e) e = e? e : (window.event ? window.event : null); 2、IE:interText ;FF:interHTML或者textContent3、获取鼠标位置:在IE 中,event 对象有 x, y 属性,FF中没有。在FF中,与event.x 等效的是 event.pageX。但event.pageX IE中没有。解决方法:mX = event.clientX ? event.clientX : event.pageX;4、event.srcElement问题说明:IE下,even对象有srcElement属性,但是没有target属性;Firefox下,even对象有target属性,但是没有 srcElement属性.解决方法:使用obj(obj = event.srcElement ? event.srcElement : event.target;)来代替IE下的event.srcElement或者Firefox下的event.target.或者 if(document.all) obj = event.srcElement ; else obj = arguments0.target; 5、window.location.href问题说明:IE或者Firefox2.0.x下,可以使用window.location或 window.location.href;Firefox1.5.x下,只能使用window.location.解决方法:使用window.location来代替window.location.href.6、模态和非模态窗口问题说明:IE下,可以通过showModalDialog和showModelessDialog打开模态和非模态窗口;Firefox下则不能.解决方法:直接使用window.open(pageURL,name,parameters)方式打开新窗口如果需要将子窗口中的参数传递回父窗口,可以在子窗口中使用window.opener来访问父窗口. 例如:var parWin = window.opener;parWin.document.getElementById(Aqing).value = Aqing;7、FF中类似 obj.style.height = imgObj.height 的语句无效解决方法:obj.style.height = imgObj.height + px;8、捕获事件if (document.all) window.document.attachEvent(onclick,gorush);else window.document.addEventListener(click,gorush,false) 9、判断浏览器类型:var isIE=document.all? true:false;10、如果在frame标签中书写了以下属性:那么ie可以通过id或者name访问这个frame对应的window对象而FF只可以通过name来访问这个frame对应的window对象例如如果上述frame标签写在最上层的window里面的htm里面,那么可以这样访问IE: window.top.frameId或者window.top.frameName来访问这个window对象FF: 只能这样window.top.frameName来访问这个window对象另外,在FF和ie中都可以使用window.top.document.getElementById(frameId)来访问frame标签并且可以通过window.top.document.getElementById(testFrame).src = xx.htm来切换frame的内容也都可以通过window.top.frameName.location = xx.htm来切换frame的内容11、父结点的问题在FF中没有 parentElement parentElement.children 而用 parentNode parentNode.childNodeschildNodes的下标的含义在IE和FF中不同,FF使用DOM规范,childNodes中会插入空白文本节点。一般可以通过node.getElementsByTagName()来回避这个问题。当html中节点缺失时,IE和FF对parentNode的解释不同,例如 FF中input.parentNode的值为form, 而IE中input.parentNode的值为空节点FF中节点没有removeNode方法,必须使用如下方法 node.parentNode.removeChild(node)12、自定义属性问题说明:IE下,可以使用获取常规属性的方法来获取自定义属性,也可以使用getAttribute()获取自定义属性;FF下,只能使用getAttribute()获取自定义属性.解决方法:统一通过getAttribute()获取自定义属性.13、事件委托方法IE:document.body.onload = inject; /Function inject()在这之前已被实现FF:document.body.onload = inject();如果要加传递参数,可以做个闭包(function(arg) document.body.onload=function()inject(arg);)(arg)14、cssfloat属性IE:document.getElementById(header).style.styleFloat = left;FF:document.getElementById(header).style.cssFloat = left;15、获取label标签“for”属性IE:var myObject = document.getElementById(myLabel);var myAttribute = myObject.getAttribute(htmlFor);FF:var myObject = document.getElementById(myLabel);var myAttribute = myObject.getAttribute(for);对于 setAtrribute 方法来说也是同样的语法。16、获取视窗或浏览器窗口的尺寸IE :var myBrowserSize = 0, 0;myBrowserSize0 = document.documentElement.clientWidth;myBrowserSize1 = document.documentElement.clientHeight;FF:var myBrowserSize = 0, 0;myBrowserSize0 = window.innerWidth;myBrowserSize1 = window.innerHeight;17、设置滤镜:IE:var myObject = document.getElementById(myElement);myObject.style.filter = alpha(opacity=80);FF:var myObject = document.getElementById(myElement);myObject.style.opacity = 0.5;18、.在取得网页窗口区域和获取滚动条位移距离时也要用document.documentElement即这四个属性(clientWidth、 clientHeight、scrollLeft、scrollTop)一定要用document.documentElement但是 document.body.appendChild()和document.body.removeChild()却是可以用的,而且用 document.documentElement.appendChild()和 document.documentElement.removeChild()代替却会报错;总结了一下仅 clientWidth、clientHeight、scrollLeft、scrollTop和 document.documentElement.style时才用document.documentElement19、body问题Firefox的body在body标签没有被浏览器完全读入之前就存在;而IE的body则必须在body标签被浏览器完全读入之后才存在.例如:FF:document.body.onclick = function(evt)evt = evt | window.event;alert(evt);IE&Firefox:document.body.onclick = function(evt)evt = evt | window.event;alert(evt); 20、幻灯片效果if(document.all)filters0.Apply();document.getElementById(imageid).src=path;/更换图片filters0.play();elsefirfoxPlays(path,imageid)var intTimeStep=20;var intAlphaStep=0.04;var curSObj=null;var curOpacity=null;function firfoxPlays(path,imageid) curSObj=document.getElementById(imageid); curSObj.style.opacity=0; curSObj.src=path; curOpacity=0; setObjOpen();function setObjOpen() curOpacity+=intAlphaStep; curSObj.style.opacity =curOpacity; if (curOpacity -1)其他同理23、document.documentElement.scr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论