IE bug table元素的innerHTML
首先时飘忽不定的collapse的border,ie6偏偏有一个地方与其他浏览器表现不同,一条丑陋的border不管怎么样都显示出来。无解。
上面的问题可以用诡异方法解决的话,那接下来就完全没有办法了。
由于涉及到了数据的异步传输和实时显示,于是自己写了一个前端模版通过innerHTML动态更新数据。其他浏览器都工作正常,偏偏ie怎么都出不来数据。排查了半天,结果是IE的table元素为只读,不能使用innerHTML!!!!
同样为只读的元素还有COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, TR等。
这是ie的bug还是本应该如此⋯⋯ 累⋯⋯
最后改用ul,世界美好啊⋯⋯
相关推荐
-
IE innerHTML,outerHTML所引起的问题
innerHTML或是outerHTML 比如说: 复制代码 代码如下: var crtDIV = document.getElementById('divIDName'); if (crtDIV) { crtDIV.parentNode.removeChild(crtDIV); crtDIV.outerHTML = ""; } 就有可能发现,整个界面都是无法选中,只有链接才可点击. 解决这方面的异常或是IE错误,只有: 不用outerHTML,或innerHTML. 如果是用到了in
-
解决IE下select标签innerHTML插入option的BUG(兼容IE,FF,Opera,Chrome,Safari)
前言: 这是一个老bug了,现在提供一个完美解决方案.由于我一直是用createElement来创建动态的option并添加,所以一直没有遇到这个问题,但是每个人写代码风格不同,有的人就喜欢写字符串形式的标签并用innerHTML插入,这不就有问题了,为了方便不同编码风格的人,我封装了一个方法,用于解决ie的这个bug和兼容5大浏览器,这样大家都可以用一个方法来实现不同的风格,便于维护管理. bug描述: 在ie下面使用innerHTML来插入option选项的话,ie会去掉前面的<option
-
IE6-IE9不支持table.innerHTML的解决方法分享
测试代码: 复制代码 代码如下: <table id="test"> </table> <script> var oTable=document.getElementById("test"); oTable.innerHTML="<tr><td>innerHTML</td></tr>"; </script> 上述代码在IE6-9中无效,直接报错: IE
-
IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值的完美解决方案
IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值,重现代码如下 复制代码 代码如下: <!DOCTYPE html><html> <head> <meta charset="utf-8"/> <title>IE6-IE9中tbody的innerHTML不能复制bug</title> </head> <body style=&quo
-
Javascript在IE下设置innerHTML时出现未知的运行时错误的解决方法
复制代码 代码如下: <script> document.getElementById("trone").innerHTML = "<td>haha</td>"; </script> <tr id="trone"> </tr> 在IE中,有时候会出现"未知的运行时错误(unknown runtime error)",而在firefox里不会. 这主要是IE
-
JS 动态获取节点代码innerHTML分析 [IE,FF]
<div id="parentnode"> <span id="childnode">child</span> </div> <script type="text/javascript"> var childNode = document.getElementById("childnode") , parentNode = document.getElementByI
-
js的.innerHTML = ""IE9下显示有错误的解决方法
问题: 在用js动态创建html页面时: 复制代码 代码如下: var tab = document.createElement("table"); tab.innerHTML += "<td>订货单号</td>"+ "<td>单据日期</td>"+ "<td>商品类型</td>"+ "<td>订单属性</td>"
-
IE6与IE7中,innerHTML获取param的区别
代码: 复制代码 代码如下: <html> <head> <script type="text/javascript"><!-- function setMode(newMode) { var text1=document.getElementById("text1"); var cont; bTextMode = newMode; if (bTextMode) { cont=text1.innerHTML; text1.i
-
IE6/7/8/9中Table/Select的innerHTML不能赋值的解决方法
IE6/7/8/9中Table/Select的innerHTML赋值会报错,如下 IE6/7/8/9中TABLE的innerHTML不能赋值 try{ var table = document.createElement('table'); table.innerHTML = ' Test table innerHTML ' document.body.appendChild(table); }catch(e){ alert(e); } [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]
-
仅IE6/7/8中innerHTML返回值忽略英文空格的问题
如下 复制代码 代码如下: <div id="user"> jack</div> <script> alert(document.getElementById('user').innerHTML.length); </script> div[id=user]中的文本"jack"前有两个英文空格,各浏览器下结果如下 IE6/7/8 : 弹出4,即忽略了空格 IE9/Firefox/Safari/Chrome/Opera
-
innerHTML 和 getElementsByName 在IE下面的bug 的解决
比如有这样一个问题. 复制代码 代码如下: <div id="playlist"> </div> 在这div 中,加入一个播放吗列表.这列表用innerHTML 加入. 复制代码 代码如下: var plst = null; plst = player.getPlaylist(); if (plst) { var txt = ''; for(var i in plst) { txt += '<a name="fv_item_a_' + i + '
-
IE 下的只读 innerHTML
今天做东西遇到一个问题,我试图动态为一个表格添加多行数据,先定义了一个table: 复制代码 代码如下: <table> <thead> </thead> <tbody id="filelist"> </tbody> </table> 然后在JavaScript 中这样操作: 复制代码 代码如下: for(var i in entries){ ... var filetable = document.getElem
随机推荐
- MYSQL必知必会读书笔记第十和十一章之使用函数处理数据
- linux服务器下通过iptables+Denyhost抵御暴力破解的配置方法
- iOS10 推送最新特性研究
- 动态加载Js代码到Head标签中的脚本
- Asp.net MVC 对所有用户输入的字符串字段做Trim处理的方法
- php上传文件并显示上传进度的方法
- Python标准库与第三方库详解
- mysql "group by"与"order by"的研究--分类中最新的内容
- 浅析BootStrap栅格系统
- 在JS中最常看到切最容易迷惑的语法(转)
- Ruby on Rails下的图像处理入门教程
- Java数据结构与算法之选择排序(动力节点java学院整理)
- Android EventBus 3.0.0 使用总结(必看篇)
- MongoDB中ObjectId的误区及引起的一系列问题
- 基于canvas实现的钟摆效果完整实例
- windows7下安装php的php-ssh2扩展教程
- Springmvc实现文件上传
- MySQL InnoDB中的锁机制深入讲解
- Python 中几种字符串格式化方法及其比较
- 获取Pytorch中间某一层权重或者特征的例子