首页 >

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

web前端|js教程

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

ie6_ie9_json_table_innerhtml
web前端-js教程
A、在IE兼容模式中以及各具有IE内核的浏览器兼容模式中使用 jQuery 中的JSON函数时出现“JSON未定义” 而切换到浏览器高速模式则正常显示
swf影视网站源码,ubuntu修改挂载点,网络爬虫病毒形,lniux php,新站seo收录lzw
解决方案 :
黑客网源码,ubuntu断点传输文件,tomcat下载安装64,弹幕爬虫方法,php中的分页,百度贴吧关键词排名seolzw
1.直接在使用的页面中引入json2.js (https://github.com/douglascrockford/JSON-js/blob/master/json2.js)引入方法不再赘述。
破解源码下载,ubuntu运行rpm文件,网络爬虫 蚂蜂窝,php manager、,合肥seo互点lzw
2.在页面的公共js方法里判断

if(typeof JSON == 'undefined'){   $('head').append($("")); //此处的位置为该js文件所在路径  }

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

发现是在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 = '' + html + '
';//注意此处传进来的html变量包含“”标签 如果HTML变量中没有 则为 '' + html + '
' table.replaceChild(temp.firstChild.firstChild, table.tBodies[0]);//用生成的div中table的tbody替换原table中的tbody } else { table.innerHTML = html; }}
以上内容是小编给大家分享的IE6-IE9使用JSON、table.innerHTML所引发的问题,希望大家喜欢。


  • 暂无相关文章