IE与FireFox的兼容性问题分析

window.event

IE:有window.event对象 
FF:没有window.event对象。可以通过给函数的参数传递event对象。如onmousemove=doMouseMove(event) 
鼠标当前坐标

IE:event.x和event.y。 
FF:event.pageX和event.pageY。 
通用:两者都有event.clientX和event.clientY属性。 
鼠标当前坐标(加上滚动条滚过的距离)

IE:event.offsetX和event.offsetY。 
FF:event.layerX和event.layerY。 
标签的x和y的坐标位置:style.posLeft 和 style.posTop

IE:有。 
FF:没有。 
通用:object.offsetLeft 和 object.offsetTop。 
窗体的高度和宽度

IE:document.body.offsetWidth和document.body.offsetHeight。注意:此时页面一定要有body标签。 
FF:window.innerWidth和window.innerHegiht,以及document.documentElement.clientWidth和document.documentElement.clientHeight。 
通用:document.body.clientWidth和document.body.clientHeight。 
添加事件

IE:element.attachEvent("onclick", func);。 
FF:element.addEventListener("click", func, true)。 
通用:element.onclick=func。虽然都可以使用onclick事件,但是onclick和上面两种方法的效果是不一样的,onclick只有执行一个过程,而attachEvent和addEventListener执行的是一个过程列表,也就是多个过程。例如:element.attachEvent("onclick", func1);element.attachEvent("onclick", func2)这样func1和func2都会被执行。 
标签的自定义属性

IE:如果给标签div1定义了一个属性value,可以div1.value和div1["value"]取得该值。 
FF:不能用div1.value和div1["value"]取。 
通用:div1.getAttribute("value")。 
父节点、子节点和删除节点

IE:parentElement、parement.children,element.romoveNode(true)。 
FF:parentNode、parentNode.childNodes,node.parentNode.removeChild(node)。 
画图

IE:VML。 
FF:SVG。 
CSS:透明

IE:filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=60)。 
FF:opacity:0.6。 
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;。 
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;。

(0)

相关推荐

  • FF IE兼容性的修改小结

    1.html 标签如果用 $(id) 或者 getElementById 这两个方法取值时,要给该标签加上 id 的属性, IE . FF 才兼容.如 $(mobile): 如果填 写 mobile 的 input 没有 id 属性在 FF 中会报这个变量 undefined : 2. 取 form 表单的某个标签对象,如果要 IE . FF 兼容要把 formMain.item 改为 document.formName.item . 如 form1.webUrl 改为 document.for

  • JS IE和FF兼容性问题汇总

    1. document.form.item 问题 现有问题: 现有代码中存在许多 document.formName.item("itemName") 这样的语句,不能在 MF 下运行 解决方法: 改用 document.formName.elements["elementName"] 其它 参见 2 2. 集合类对象问题 现有问题: 现有代码中许多集合类对象取用时使用 (),IE 能接受,MF 不能. 解决方法: 改用 [] 作为下标运算.如:document.f

  • Js event事件在IE、FF兼容性问题

    1.window.event IE:有window.event对象 FF:没有window.event对象.可以通过给函数的参数传递event对象. 如: 复制代码 代码如下: <input type="button" onmousemove="showDiv(event);"//event不需要加引号 function showDiv(event) { var event=window.event||event; event.clientX; event.c

  • IE和Mozilla的兼容性汇总event

    1,关于event的用法 存在问题:IE中可以直接使用event对象,但是Mozilla不可以直接使用. 例如: <input type="button" value="clickMe" nclick="doIt()"> <script. language="javascript"> function doIt(){ alert(event); } </script> 这段代码在Mozill

  • 网页和浏览器兼容性问题汇总(draft1)

    一.Javascript 1.日期对象的getYear方法 IE getYear()返回的结果和getFullYear()结果是相同的,但是ECMA262明确规定了getYear返回的是"年份-1970".而有些网站采用getYear返回年份,导致IE浏览器和FF等比较规范的浏览器出现逻辑上的不同. 二.DOM 1.事件模型 2.document.elementFromPoint document的该方法是IE扩展的,可以根据视口的客户区坐标返回元素的DOM节点.safari也支持该方

  • 整理一些JavaScript的IE和火狐的兼容性注意事项

    1. document.form.item 问题 (1)现有问题: 现有代码中存在许多 document.formName.item("itemName") 这样的语句,不能在Firefox(火狐)下运行 (2)解决方法: 改用 document.formName.elements["elementName"] (3)其它 参见 2 2. 集合类对象问题 (1)现有问题: 现有代码中许多集合类对象取用时使用 (),IE 能接受,Firefox(火狐)不能. (2)解

  • IE和Firefox在JavaScript应用中的兼容性探讨

    1.document.formName.item("itemName") 问题 说 明:IE下,可以使用document.formName.item("itemName")或document.formName.elements ["elementName"];Firefox下,只能使用document.formName.elements["elementName"]. 解决方法:统一使用document.formName.el

  • javascript在事件监听方面的兼容性小结

    1,IE使用attachEvent/detachEvent方法来添加和删除事件监听器:w3c使用addEventListener/removeEventListener方法. 2,IE对其事件使用onevent的命名方式,而w3c的是event的命名方式. 3,IE事件监听器内使用的是一个全局的Event对象,而w3c是将event对象作为参数传递给监听器. 4,为了避免触发默认的事件行为,IE的做法是要求程序员设置Event对象中的returnValue属性值为false,而w3c的做法是执行

  • Javascript 多浏览器兼容性问题及解决方案

    CSS 多浏览器兼容性问题及解决方案一.document.formName.item("itemName") 问题 问题说明:IE下,可以使用 document.formName.item("itemName") 或 document.formName.elements ["elementName"]:Firefox 下,只能使用document.formName.elements["elementName"]. 解决方法:统

  • IE和firefox浏览器的event事件兼容性汇总

    1,关于event的用法 存在问题:IE中可以直接使用event对象,但是Mozilla不可以直接使用. 例如: <input type="button" value="clickMe" nclick="doIt()"> <script. language="javascript"> function doIt(){ alert(event); } </script> 这段代码在Mozill

随机推荐