火狐、ie不兼容汇总归类.pdfVIP

  • 0
  • 0
  • 约7.04千字
  • 约 5页
  • 2021-12-07 发布于福建
  • 举报
下面是一些 Javascript 的 IE 和 Firefox(火狐 )兼容性的常用例子 1. document.formName.item(itemName) 问题 IE 可以使用 document.formName.item(itemName) 或 document.formName.elements[elementName] Firefox 只能使用 document.formName.elements[elementName]. 解决方法 :统一使用 document.formName.elements[elementName]. 2.集合类对象问题 IE 可以使用 ()或 [] 获取集合类对象 ; Firefox 只能使用 [] 获取集合类对象 . 解决方法 :统一使用 [] 获取集合类对象 . 3. 自定义属性问题 IE 可使用获取常规属性的方法来获取自定义属性 ,也可使用 getAttribute() 获取自定义属性 ; Firefox 只能使用 getAttribute() 获取自定义属性 . 解决方法 :统一通过 getAttribute() 获取自定义属性 . 4.eval(idName) 问题 IE 可以使用 eval(idName) 或 getElementById(idName) 来取得 id 为 idName 的 HTML 对象 ; Firefox 只能使用 getElementById(idName) 来取得 id 为 idName 的 HTML 对象 . 解决方法 :统一用 getElementById(idName) 来取得 id 为 idName 的 HTML 对象 . 5.变量名与某 HTML 对象 ID 相同的问题 IE HTML 对象的 ID 可以作为 document 的下属对象变量名直接使用 ;Firefox 则不能 . Firefox 可以使用与 HTML 对象 ID 相同的变量名 ;IE 则不能。 解决方法 :使用 document.getElementById(idName) 代替 document.idName. 最好不要取 HTML 对象 ID 相同的变量名 , 以减少错误 ;在声明变量时 ,一律加上 var,以避免歧义 . 6.const 问题 Firefox 可以使用 const 关键字或 var 关键字来定义常量 ; IE 只能使用 var 关键字来定义常量 . 解决方法 :统一使用 var 关键字来定义常量 . 7.input.type 属性问题 IE input.type 属性为只读 Firefox input.type 属性为读写 . 8.window.event 问题 window.event 只能在 IE 下运行 ,而不能在 Firefox 下运行 ,这是因为 Firefox 的 event 只能在事 件发生的现场使用 . Firefox 必须从源处加入 event 作参数传递 .Ie 忽略该参数 ,用 window.event 来读取该 event 。 解决方法 : if( typeof(window.event)==undefined ){ eval(var event = new Object;); } 9.event.x 与 event.y 问题 IE even 对象有 x,y 属性 ,但是没有 pageX,pageY 属性 ; Firefox even 对象有 pageX,pageY 属性 ,但是没有 x,y 属性 . 解决方法 :使用 mX(mX = event.x ? event.x : event.pageX;) 来代替 IE 的 event.x

文档评论(0)

1亿VIP精品文档

相关文档