有些事情看起来简单,处理起来才会知道很麻烦。同样在更改页面颜色调节功能IE与Firefox的兼容性时遇到的几个问题及解决办法供大家参考:
1、Firefox无法响应DIV的onClick事件
原因:Firefox下不支持以下语法:

Javascript代码
  1. <DIV onClick="javascript:onPre();">

<DIV onClick="javascript:onPre();">

解决:全部按以下形式书写:

Javascript代码
  1. <DIV onClick=onPre()>

<DIV onClick=onPre()>

2、无法动态创建页面元素,即createElement无效
原因:在Fireox下不只能使用标签名做参数,不能使用<>形式,如以下语句在Firefox下不起作用,但在IE下能正常工作:

Javascript代码
  1. var obj=document.createElement('<DIV id=h_sb></DIV>');

var obj=document.createElement('<DIV id=h_sb></DIV>');

解决:全部按以下形式书写:

Javascript代码
  1. var obj=document.createElement('DIV');
  2. obj.id='h_sb';

var obj=document.createElement('DIV'); obj.id='h_sb';

3、在为动态创建的元素指定事件处理函数时,在Firefox下是运行指定函数,而非设置
原因:Firefox下,指定时间处理函数时不能带参数,否则Firefox只会执行函数,如:

Javascript代码
  1. obj.onClick=test(1);

obj.onClick=test(1);

在Firefox下会运行test函数,而不是将test函数关联到obj的click事件
解决:如果指定函数无参数则使用:

Javascript代码
  1. obj.onClick=test;

obj.onClick=test;

如果指定函数有参数则:

Javascript代码
  1. obj.onClick=function(){test(1)};

obj.onClick=function(){test(1)};

4、将动态元素添加到页面时,insertBefore出错
原因:在Firefox下不可省略insertBefore函数的第二参数
解决:使用如下语句:

Javascript代码
  1. document.body.insertBefore(obj,null);

document.body.insertBefore(obj,null);

5、Firefox下无event对象,无法直接获取鼠标坐标
解决:在指定事件处理函数时使用如下语句:

Javascript代码
  1. obj.onClick=function(ev){onMidClick(ev,sb_h)};

obj.onClick=function(ev){onMidClick(ev,sb_h)};

说明:以上ev参数类时ie的event对象,由系统自动填入,第二参数为用户自定义参数
在处理函数onMidClick中:

Javascript代码
  1. function onMidClick(evt,objSb){
  2. var mx;     //获取鼠标的X坐标
  3. if ( window.event ){
  4. mx=event.clientX;
  5. }else{
  6. mx=evt.pageX;
  7. }
  8. }

function onMidClick(evt,objSb){ var mx; //获取鼠标的X坐标 if ( window.event ){ mx=event.clientX; }else{ mx=evt.pageX; } }

6、表格操作函数无效,即以下语句无法工作:

Javascript代码
  1. var newrow=objnt.insertRow();
  2. var cal=newrow.insertCell();

var newrow=objnt.insertRow(); var cal=newrow.insertCell();

原因:与第四一样不可缺省参数
解决:使用如下语句:

Javascript代码
  1. var newrow=objnt.insertRow(-1);
  2. var cal=newrow.insertCell(-1);

var newrow=objnt.insertRow(-1); var cal=newrow.insertCell(-1);

7、Firefox下无法直接获取styleSheet的cssText,在IE下,可直接获取并设置styleSheet的cssText,但在Firefox下只能使用document.styleSheets[0].cssRules[0].cssText单个获取样式,同时使用使用:

Javascript代码
  1. document.styleSheets[0].cssRules[0].cssText=newcssText;

document.styleSheets[0].cssRules[0].cssText=newcssText;

页面不会自动更新样式,必须使用:

Javascript代码
  1. document.styleSheets[0].cssRules[0].style.cssText=newcssText;

document.styleSheets[0].cssRules[0].style.cssText=newcssText;

8、Firefox下使用数组不能使用圆括号(),只能使用中括号[]

转载于:https://www.cnblogs.com/liangGe/archive/2010/04/13/2638992.html

几个IE与Firefox的兼容性问题 (一、网络转载)相关推荐

  1. Javascript的IE跟Firefox(火狐)兼容性-转

    Javascript的IE和Firefox(火狐)兼容性-转 em 问题 (1)现有问题: 现有代码中存在许多 documenem("itemName") 这样的语句,不能在Fir ...

  2. firefox与ie的javascript兼容性编程汇编【转载】

    1. document.formName.item("itemName") 问题 说明:IE下,可以使用document.formName.item("itemName& ...

  3. [转]Javascript的IE和Firefox(火狐)兼容性

    1. document.form.item 问题 (1)现有问题: 现有代码中存在许多 document.formName.item("itemName") 这样的语句,不能在Fi ...

  4. javascript在IE和Firefox中兼容性问题

    项目要兼容IE和firefox,让我总结JavaScript在IE和Firefox中的区别,在网上到处copy了一些,然后作了一些改动: -.元素查找问题 1. document.all[name] ...

  5. css hack解决IE5 IE5.5 IE6 Firefox浏览器兼容性

    一直比较关注,最近找了一个比较全的,分享一下.  为了不同浏览器的观看效果,我们当然没必要为每个浏览器的不同版本写一个样式,这里我们利用"IE条件注释".  找了一些相关的CSS  ...

  6. 关于IE、Firefox、Opera页面呈现异同(转载)

    1.document.formName.item("itemName") 问题 说明:IE下,可以使用document.formName.item("itemName&q ...

  7. FireFox与IE兼容性汇编

    FireFox与IE兼容性汇编(转) 下面是一些Javascript的IE和Firefox(火狐)兼容性的常用例子 1.      document.formName.item("itemN ...

  8. IE与FireFox,速度和兼容性水平相当

    如果说谁是目前浏览器市场的NO.1,非IE莫数,而FireFox则作为成长最快的生力军正磨刀霍霍的准备和IE一决高下,现在最突出的问题就是,到底谁的兼容性更好一点.对于普通用户而言,肯定是IE的适用范 ...

  9. 让CSS兼容IE和Firefox的技巧集合

    CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理方法并整理了一下.对于web2.0的过度,请尽量用xhtml格 ...

  10. 关于CSS兼容IE与Firefox要点分析

    原文引用:http://blog.sina.com.cn/u/4a46bf5b010009ei 发现很多站点对Firefox的兼容性不是很好,往往导致页面排版混乱的现象,尤其是WEB2.0火热的今天, ...

最新文章

  1. 深度洞悉2017企业IT三大关注焦点
  2. 解决gitosis中authorized_keys不自动更新问题
  3. 发文越多,影响力会越大吗?
  4. Paxos、ZAB、RAFT协议
  5. 在状态栏中插入类似进度条的可视控件
  6. mysql 笔记打包下载_mysql 5.7压缩包安装笔记
  7. SQL笔记-Oracle中varchar和varchar2的区别
  8. jvm对象从新生代到老年代_JVM内存管理、JVM垃圾回收机制、新生代、老年代以及永久代...
  9. 单点服务器微信公众号,腾讯云联合微信降低开发门槛 微信生态从单点云开发到全面云开发...
  10. css线条伸缩_CSS3弹性伸缩布局(一)——box布局
  11. 【转】CString 操作指南
  12. 2014.7.8模拟赛【笨笨当粉刷匠】|bzoj1296 [SCOI]粉刷匠
  13. C语言的本质(2)——二进制、八进制、十六进制与十进制
  14. python填空题及答案知乎_zhihu-python
  15. Lanproxy任意文件读取漏洞复现(CVE-2021-3019)
  16. 面向能源互联网的多端口DC/DC能源路由器控制策略研究
  17. 数学基础(0)-- 高等数学、概率论与数理统计
  18. 【小程序项目分享】多功能抽签分组系统
  19. 根据经纬度坐标点返回所在行政区域实现
  20. #Cprove7-9 函数应用

热门文章

  1. Emacs shutcuts
  2. fromPromise
  3. HTML- 锚点实例
  4. MSCHART控件中长字符的X轴坐标标注全部显示
  5. ApiCloud重新定义移动应用开发
  6. .Net----Remoting 激活 激活方式
  7. SQL Server 2008支持将数据导出为 insert into 的脚本
  8. 使用AXI Verifcation IP进行系统验证
  9. Ubuntu14.4安装mysql
  10. Android 动态改变布局属性RelativeLayout.LayoutParams.addRule()