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 相关文章推荐
把textarea中字符串里含有的回车换行替换成&amp;lt;br&amp;gt;的javascript代码
Apr 20 Javascript
javascript suggest效果 自动完成实现代码分享
Feb 17 Javascript
Bootstrap学习笔记之css样式设计(2)
Jun 07 Javascript
JS遍历页面所有对象属性及实现方法
Aug 01 Javascript
Bootstrap table简单使用总结
Feb 15 Javascript
js简单实现网页换肤功能
Apr 07 Javascript
angular4 如何在全局设置路由跳转动画的方法
Aug 30 Javascript
jQuery Dom元素操作技巧
Feb 04 jQuery
angular2路由之routerLinkActive指令【推荐】
May 30 Javascript
vue项目实现github在线预览功能
Jun 20 Javascript
小程序视频列表中视频的播放与停止的示例代码
Jul 20 Javascript
基于Layui自定义模块的使用方法详解
Sep 14 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
PHP4实际应用经验篇(1)
2006/10/09 PHP
php实现微信公众号主动推送消息
2015/12/31 PHP
PHP实现动态创建XML文档的方法
2018/03/30 PHP
PHP使用ActiveMQ实现消息队列的方法详解
2019/05/31 PHP
PHP safe_mode开启对于PHP系统函数有什么影响
2020/11/10 PHP
js 事件小结 表格区别
2007/08/13 Javascript
checkbox全选/取消全选以及checkbox遍历jQuery实现代码
2009/12/02 Javascript
javascript实现表格增删改操作实例详解
2015/05/15 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
2016/06/14 Javascript
js实现非常棒的弹出div
2016/10/06 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
2017/01/12 Javascript
基本DOM节点操作
2017/01/17 Javascript
JSON 数据详解及实例代码分析
2017/01/20 Javascript
node安装--linux下的快速安装教程
2017/03/21 Javascript
详解Node.js项目APM监控之New Relic
2017/05/12 Javascript
vue axios请求频繁时取消上一次请求的方法
2018/11/10 Javascript
使用Angular9和TypeScript开发RPG游戏的方法
2020/03/25 Javascript
深入分析JavaScript 事件循环(Event Loop)
2020/06/19 Javascript
python在windows下实现备份程序实例
2014/07/04 Python
Python爬虫模拟登录带验证码网站
2016/01/22 Python
python机器学习之神经网络实现
2018/10/13 Python
Python3.0中普通方法、类方法和静态方法的比较
2019/05/03 Python
Pandas之排序函数sort_values()的实现
2019/07/09 Python
Python爬虫 批量爬取下载抖音视频代码实例
2019/08/16 Python
python使用pygame实现笑脸乒乓球弹珠球游戏
2019/11/25 Python
python RSA加密的示例
2020/12/09 Python
CSS3 圆角效果
2009/07/15 HTML / CSS
Surfdome西班牙:世界上最受欢迎的生活方式品牌
2019/02/13 全球购物
乐高官方旗舰店:LEGO积木玩具
2019/04/06 全球购物
GC是什么?为什么要有GC?
2013/12/08 面试题
Java面试笔试题大全
2016/11/23 面试题
幼儿园百日安全活动总结
2015/05/07 职场文书
2015暑假假期总结
2015/07/13 职场文书
演讲稿之我的初心我的成长
2019/08/12 职场文书
Go各时间字符串使用解析
2021/04/02 Golang
python 如何在list中找Topk的数值和索引
2021/05/20 Python