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 相关文章推荐
如何判断图片地址是否失效
Feb 02 Javascript
解决 firefox 不支持 document.all的方法
Mar 12 Javascript
javascript中自定义对象的属性方法分享
Jul 12 Javascript
javascript实现获取浏览器版本、浏览器类型
Dec 02 Javascript
js+html制作简单验证码
Feb 16 Javascript
js实现简单的选项卡效果
Feb 23 Javascript
angularjs实现简单的购物车功能
Sep 21 Javascript
JavaScript轮播停留效果的实现思路
May 24 Javascript
vue+element-ui集成随机验证码+用户名+密码的form表单验证功能
Aug 05 Javascript
jQuery实现的简单手风琴效果示例
Aug 29 jQuery
前端天气插件tpwidget使用方法详解
Jun 24 Javascript
layui表格数据复选框回显设置方法
Sep 13 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程序的方法
2009/03/09 PHP
php Undefined index的问题
2009/06/01 PHP
PHP中如何定义和使用常量
2013/02/28 PHP
跟我学Laravel之配置Laravel
2014/10/15 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
2014/12/15 PHP
php获取本周星期一具体日期的方法
2015/04/20 PHP
Yii2 输出xml格式数据的方法
2016/05/03 PHP
PHP简单字符串过滤方法示例
2016/09/04 PHP
PHP屏蔽关键字实现方法
2016/11/17 PHP
php模式设计之观察者模式应用实例分析
2019/09/25 PHP
javascript 写类方式之四
2009/07/05 Javascript
javascript利用控件对windows的操作实现原理与应用
2012/12/23 Javascript
在NodeJS中启用ECMAScript 6小结(windos以及Linux)
2014/07/15 NodeJs
简单的jquery左侧导航栏和页面选中效果
2014/08/21 Javascript
Javascript模拟加速运动与减速运动代码分享
2014/12/11 Javascript
编写简单的jQuery提示插件
2014/12/21 Javascript
JavaScript页面模板库handlebars的简单用法
2015/03/02 Javascript
JavaScript操作Oracle数据库示例
2015/03/06 Javascript
使用jquery+CSS3实现仿windows10开始菜单的下拉导航菜单特效
2015/09/24 Javascript
轻松学习jQuery插件EasyUI EasyUI创建树形菜单
2015/11/30 Javascript
JavaScript中的原型继承基础学习教程
2016/05/06 Javascript
onmouseover事件和onmouseout事件全面理解
2016/08/15 Javascript
jquery实现拖动效果(代码分享)
2017/01/25 Javascript
微信小程序request请求后台接口php的实例详解
2017/09/20 Javascript
jQuery滚动条美化插件nicescroll简单用法示例
2018/04/18 jQuery
python爬虫入门教程--HTML文本的解析库BeautifulSoup(四)
2017/05/25 Python
python中requests库session对象的妙用详解
2017/10/30 Python
python实现opencv+scoket网络实时图传
2020/03/20 Python
Python 存取npy格式数据实例
2020/07/01 Python
西班牙太阳镜品牌:Hawkers
2018/03/11 全球购物
一套C#面试题
2013/10/09 面试题
造型师求职自荐信
2013/09/27 职场文书
老师对学生的评语
2014/04/18 职场文书
售房协议书
2014/08/19 职场文书
早上好问候语大全
2015/11/10 职场文书
多表查询、事务、DCL
2021/04/05 MySQL