IE与FireFox的JavaScript兼容问题解决办法


Posted in Javascript onDecember 31, 2013

以下是 我在开发中遇到的情况:

1、动态删除table里的某一行。

table:表示table对象。

k:表示行号

table.rows[k].removeNode(true); //firefox执行失败,ie执行成功

IE与FireFox兼容写法

table.deleteRow(k);

2、为HTML标签自定义属性。

inputElement:表示表单元素。

propertyName:表示表单元素下的某个属性

inputElement.propertyName; //firefox执行失败,ie执行成功

IE与FireFox兼容写法

document.getElementById("txtInput").attributes["idvalue"].nodeValue

3、在指定位置插入HTML元素。

inputElement:表示表单元素。

vDiv:表示将要插入的HTML元素。

inputElement.insertAdjacentElement("AfterEnd",vDiv);//firefox执行失败,ie执行成功

IE与FireFox兼容写法

在firefox中,没有该方法的定义,因此,如果需要调用该方法,需要自己重定义该方法。

//重写insertAdjacentElement()方法,因为firefox中没有该方法
             HTMLElement.prototype.insertAdjacentElement=function(where,parsedNode){
                switch(where){
                    case "beforeBegin":
                        this.parentNode.insertBefore(parsedNode,this);
                        break;
                    case "afterBegin":
                        this.insertBefore(parsedNode,this.firstChild);
                        break;
                    case "beforeEnd":
                        this.appendChild(parsedNode);
                        break;
                    case "afterEnd":
                        if(this.nextSibling)
                            this.parentNode.insertBefore(parsedNode,this.nextSibling);
                        else
                            this.parentNode.appendChild(parsedNode);
                        break;
                    }
                }

4、break语句失效。

在IE里执行for循环语句时原本使用break可以跳出当次循环。但在FF里面就变成了退出整个循环。这时候改用continue语句即可。

5、firefox报String contains an invalid character。

var chkBox=document.createElement('<input type="Checkbox" name="treeBox" value= '+key+'>'); //在IE下成功执行

IE与FireFox兼容写法

firefox不支持这种createElement的定义方式,需要分步进行:

 var chkBox = document.createElement('input');
 chkBox.name = "treeBox";
 chkBox.type = "checkbox";
chkBox.value = key;

6、table 对象的 (表格行)对象的集合
bdList.rows(k).cells(0).innerHTML = "<a>aaa</a>";//firefox执行失败,ie执行成功

IE与FireFox兼容写法

bdList.rows[k].cells[0].innerHTML = "<a>aaa</a>";

7、JS的getYear()方法在firefox里的问题

var today = new date();
var year = today.getYear();
在 Firefox 里面 getYear 返回的是 "当前年份-1900" 的值 IE里面则:
当today的年份小于2000的时候,和firefox一样。所以最好用 getFullYear getUTCFullYear 去调用

IE与FireFox兼容写法

var today = new date(); 
var year = today.getFullYear();
Javascript 相关文章推荐
浏览器图片选择预览、旋转、批量上传的JS代码实现
Dec 04 Javascript
jQuery如何取id有.的值一般的方法是取不到的
Apr 18 Javascript
在JS中操作时间之getUTCMilliseconds()方法的使用
Jun 10 Javascript
js+canvas简单绘制圆圈的方法
Jan 28 Javascript
非常棒的jQuery图片轮播效果
Apr 17 Javascript
js利用appendChild对标签进行排序的实现方法
Oct 16 Javascript
字太多用...代替的方法(两种)
Mar 15 Javascript
js实现字符全排列算法的简单方法
May 01 Javascript
angular 未登录状态拦截路由跳转的方法
Oct 09 Javascript
多个vue子路由文件自动化合并的方法
Sep 03 Javascript
Electron整合React使用搭建开发环境的步骤详解
Jun 07 Javascript
JavaScript代码实现微博批量取消关注功能
Feb 05 Javascript
jquery遍历select元素(实例讲解)
Dec 31 #Javascript
在页面上用action传递参数到后台出现乱码的解决方法
Dec 31 #Javascript
获取鼠标在div中的相对位置的实现代码
Dec 30 #Javascript
input链接页面、打开新网页等等的具体实现
Dec 30 #Javascript
获取3个数组不重复的值的具体实现
Dec 30 #Javascript
改变隐藏的input中value的值代码
Dec 30 #Javascript
js中switch case循环实例代码
Dec 30 #Javascript
You might like
php传值方式和ajax的验证功能
2017/03/27 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
2017/12/26 PHP
PHP实现Redis单据锁以及防止并发重复写入
2018/04/10 PHP
PHP 实现文件压缩解压操作的方法
2019/06/14 PHP
js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)
2010/04/14 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
基于jQuery实现的菜单切换效果
2015/10/16 Javascript
使用Angular.js实现简单的购物车功能
2016/11/21 Javascript
jquery PrintArea 实现票据的套打功能(代码)
2017/03/17 Javascript
Vue学习笔记进阶篇之函数化组件解析
2017/07/21 Javascript
vue多页面开发和打包正确处理方法
2018/04/20 Javascript
jQuery实现遍历XML节点和属性的方法示例
2018/04/29 jQuery
vue使用Proxy实现双向绑定的方法示例
2019/03/20 Javascript
使用原生javascript开发计算器实例代码
2021/02/21 Javascript
python实现文件名批量替换和内容替换
2014/03/20 Python
Python使用MySQLdb for Python操作数据库教程
2014/10/11 Python
Python简单删除列表中相同元素的方法示例
2017/06/12 Python
Python 利用pydub库操作音频文件的方法
2019/01/09 Python
python GUI库图形界面开发之PyQt5动态(可拖动控件大小)布局控件QSplitter详细使用方法与实例
2020/03/06 Python
python如何进入交互模式
2020/07/06 Python
python 实现汉诺塔游戏
2020/11/28 Python
css3发光搜索表单分享
2014/04/11 HTML / CSS
基于css3 animate制作绚丽的动画效果
2015/11/24 HTML / CSS
CSS3实现王者荣耀匹配人员加载页面的方法
2019/04/16 HTML / CSS
Dogeared官网:在美国手工制作的珠宝
2019/08/24 全球购物
幼师专业毕业生自荐信
2013/09/29 职场文书
乡镇庆八一活动方案
2014/02/02 职场文书
公共机构节能宣传周活动总结
2014/07/09 职场文书
2014年党务公开工作总结
2014/12/09 职场文书
同事离别感言
2015/08/04 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电
Python基础之hashlib模块详解
2021/05/06 Python
MySQL开启事务的方式
2021/06/26 MySQL
Mysql分析设计表主键为何不用uuid
2022/03/31 MySQL
Python用tkinter实现自定义记事本的方法详解
2022/03/31 Python
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers