惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
IT之家
IT之家
博客园 - Franky
Stack Overflow Blog
Stack Overflow Blog
宝玉的分享
宝玉的分享
Recent Announcements
Recent Announcements
Engineering at Meta
Engineering at Meta
S
SegmentFault 最新的问题
V
Visual Studio Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Last Week in AI
Last Week in AI
H
Help Net Security
V
V2EX
H
Hackread – Cybersecurity News, Data Breaches, AI and More
量子位
博客园 - 叶小钗
J
Java Code Geeks
博客园 - 【当耐特】
月光博客
月光博客
爱范儿
爱范儿
人人都是产品经理
人人都是产品经理
酷 壳 – CoolShell
酷 壳 – CoolShell
小众软件
小众软件

博客园 - 悟空空

Firefox IE兼容性js笔记 在cs类中调用嵌入资源并输出流 - 悟空空 - 博客园 调用dll给winform程序创建所有用户均可使用的快捷方式 SQL Server获取TEXT字段的内容长度 正则表达式笔记 Silverlight 4简体中文正式版脱机帮助文档安装说明 [原创]利用CPAU静默调用其它程序 - 悟空空 - 博客园 CPAU参数说明 - 悟空空 - 博客园 apache_2.2.4和php-5.3.2安装过程问题整理 Rectangle 属性 SSL网站自动安装根目录证书(整理备用)javascript - 悟空空 - 博客园 NND年年回家这么难买火车票 DoubleAnimation 类 Storyboard 类 - 悟空空 - 博客园 CroppedBitmap 类 Windows Presentation Foundation 中的 Pack URI WPF 性能分析工具 CompositionTarget 类 SolidColorBrush 类 - 悟空空 - 博客园
Firefox,Safari与IE兼容性问题整理
悟空空 · 2011-05-11 · via 博客园 - 悟空空

兼容以上浏览器主要注意几个方面:

     1.获取对象属性

           ie获取对象属性比较简单,不管是否是自定义的属性均可直接获取

           例如:

<input  type="radio" value="11" name="x" xid="DeptID_Exec" xname="DName_Exec"/>

在js中获取input的value,xid,xname 均可直接写this.value,this.xid,this.xname即可.

但是在ff和safari下需要注意value可直接使用this.value取值,但是自定义的属性如xid和xname则需要

使用xid=this.attributes['xid'].nodeValue; xname = this.attributes['xname'].nodeValue; 来进行

取值. 

     2.自定义的cell赋值问题

           因各种业务有时我们需要使用js构建table.在ie下构建比较简单

var table = document.createElement("TABLE");

var Row = table.insertRow(0);
var cell = Row.insertCell(0);

cell.innerText = dataRows["DName"];

.....(此处省略几百字构建表的过程)

类似以上语句即可构建表.

但是在ff和safari下

cell中显示的文字必须使用以下方式:

cell.appendChild(document.createTextNode("需要显示的文字"));

   3.今天又遇到离奇的事情,某个功能中需要进行人员选择操作,选择人员是使用弹出窗口,选择

后要在当前窗口创建table

使用的仍然是

var table = document.createElement("TABLE");

var Row = table.insertRow();
var cell = Row.insertCell();

但是在firefox下到var Row = table.insertRow();就会报错,问题找了半天,还以为是后面的数据错误

或者是firefox弹出窗体操作不同导致的,最后才查出来原来是在

insertRow和insertCell方法有一个默认的参数-1,表示在当前行或者单元格后插入行和单元格

在ie中可以不用填写这个参数,但是在firefox浏览器下必须加上这个参数否则就会出现缺少参数的错误

var Row = table.insertRow(-1);
var cell = Row.insertCell(0);

......此问题困扰我2个小时哎

其它问题待遇到时再进行整理
 

注:FF和safari的解析方式很相似,所以在进行兼容性调试时用ff进行测试即可