IE6-IE9使用JSON、table.innerHTML所引发的问题


Posted in Javascript onDecember 22, 2015

 一、在IE兼容模式中以及各具有IE内核的浏览器兼容模式中使用  jQuery 中的JSON函数时出现“JSON未定义”  而切换到浏览器高速模式则正常显示

解决方案 :

1.直接在使用的页面中引入json2.js (https://github.com/douglascrockford/JSON-js/blob/master/json2.js)引入方法不再赘述。

2.在页面的公共js方法里判断

if(typeof JSON == 'undefined'){ 

$('head').append($("<script type='text/javascript' src='.../json2.js'>")); //此处的位置为该js文件所在路径

}

二、使用ajax时,经常需要动态生成页面元素,而使用element上属性innerHTML填充页面HTML。但是在使用中发现 table元素的innerHTML时赋值时,在firefox下是好的,但在ie兼容模式中出现未知的运行时错误。错误示例如下:

 IE6-IE9使用JSON、table.innerHTML所引发的问题

发现是在IE6-IE9下,下列元素table,thead,tfoot,tbody,tr,col,colgroup,html,title,style,frameset的innerHTML属性是只读的

解决方法:调用下面js方法

function setTableInnerHTML(table, html) {//table 为table对象,html为生成的html字符串
  if (navigator && navigator.userAgent.match(/msie/i)) {
    var temp = table.ownerDocument.createElement('div');
    temp.innerHTML = '<table>' + html + '</table>';//注意此处传进来的html变量包含“<tbody></tbody>”标签  如果HTML变量中没有 则为 '<table><tbody>' + html + '</tbody></table>'
    table.replaceChild(temp.firstChild.firstChild, table.tBodies[0]);//用生成的div中table的tbody替换原table中的tbody
  } else {
    table.innerHTML = html;
  }
}

以上内容是小编给大家分享的IE6-IE9使用JSON、table.innerHTML所引发的问题,希望大家喜欢。

Javascript 相关文章推荐
JS效率个人经验谈(8-15更新),加入range技巧
Jan 09 Javascript
JS图片预加载 JS实现图片预加载应用
Dec 03 Javascript
jQuery获取选中内容及设置元素属性的方法
Jul 09 Javascript
JavaScript使用循环和分割来替换和删除元素实例
Oct 13 Javascript
浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
Mar 22 Javascript
简单谈谈require模块化jquery和angular的问题
Jun 23 jQuery
React 实现拖拽功能的示例代码
Jan 06 Javascript
Node.js从字符串生成文件流的实现方法
Aug 18 Javascript
windows实现npm和cnpm安装步骤
Oct 24 Javascript
微信小程序转化为uni-app项目的方法示例
May 22 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
Jun 11 Javascript
Javascript的promise,async和await的区别详解
Mar 24 Javascript
JavaScript+CSS无限极分类效果完整实现方法
Dec 22 #Javascript
JS实现的表格操作类详解(添加,删除,排序,上移,下移)
Dec 22 #Javascript
JS控制按钮10秒钟后可用的方法
Dec 22 #Javascript
js实现C#的StringBuilder效果完整实例
Dec 22 #Javascript
JavaScript判断对象是否为数组
Dec 22 #Javascript
javascript中类的定义方式详解(四种方式)
Dec 22 #Javascript
jquery获取select选中值的方法分析
Dec 22 #Javascript
You might like
PHP对象实例化单例方法
2017/01/19 PHP
Ubuntu彻底删除PHP7.0的方法
2018/07/27 PHP
利用javascript的面向对象的特性实现限制试用期
2011/08/04 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
2013/04/15 Javascript
jQuery之排序组件的深入解析
2013/06/19 Javascript
asp.net刷新本页面的六种方法总结
2014/01/07 Javascript
jQuery中queue()方法用法实例
2014/12/29 Javascript
vue.js实例todoList项目
2017/07/07 Javascript
vue-cli脚手架build目录下utils.js工具配置文件详解
2018/09/14 Javascript
Vue 表情包输入组件的实现代码
2019/01/21 Javascript
JavaScript数据结构与算法之检索算法实例分析【顺序查找、最大最小值、自组织查询】
2019/02/22 Javascript
使用Vue实现一个树组件的示例
2020/11/06 Javascript
Python学习笔记(二)基础语法
2014/06/06 Python
pygame学习笔记(5):游戏精灵
2015/04/15 Python
python用reduce和map把字符串转为数字的方法
2016/12/19 Python
Python 常用的安装Module方式汇总
2017/05/06 Python
python中装饰器级连的使用方法示例
2017/09/29 Python
python使用os.listdir和os.walk获得文件的路径的方法
2017/12/16 Python
基于python 处理中文路径的终极解决方法
2018/04/12 Python
Python实现的文本对比报告生成工具示例
2018/05/22 Python
Python线程之定位与销毁的实现
2019/02/17 Python
详解Python可视化神器Yellowbrick使用
2019/11/11 Python
在tensorflow中设置使用某一块GPU、多GPU、CPU的操作
2020/02/07 Python
python 窃取摄像头照片的实现示例
2021/01/08 Python
用canvas实现图片滤镜效果附演示
2013/11/05 HTML / CSS
英国领先的维生素和补充剂品牌:Higher Nature
2019/08/26 全球购物
什么是唯一索引
2015/07/05 面试题
软件配置管理有什么好处
2015/04/15 面试题
仪器仪表检测毕业生自荐信
2013/10/31 职场文书
大学团支书的自我评价分享
2013/12/14 职场文书
基层干部2014全国两会学习心得体会
2014/03/10 职场文书
关于读书的演讲稿800字
2014/08/27 职场文书
2014镇党委书记党建工作汇报材料
2014/11/02 职场文书
企业转让协议书(范文2篇)
2019/08/15 职场文书
浅谈Python数学建模之固定费用问题
2021/06/23 Python
面试提问mysql一张表到底能存多少数据
2022/03/13 MySQL