今天写代码的时候发现一些问题,总结下:html
1.在tbody中插入html的时候FF chrome都没问题,在IE下报错(查资料获得:IE中table tbody tr等的InnerHTML都为只读,td的能够读写。因此报错)chrome
2.在向一个节点插入HTML代码时,因为IE不支持insertAdjacentHTML方法。因此作了以下判断app
if(element.insertAdjacentHTML){ element.insertAdjacentHTML('beforeEnd',html); }else{ var div = document.createElement('div'); div.innerHTML = html; element.appendChild(div.childNodes[0]); div = null; }
后来发现IE8也支持 insertAdjacentHTML方法,因此在用innerHTML往tbody中插入代码时,保存显示在了element.insertAdjacentHTML('beforeEnd',html);这一行。spa
3.在Chrome中操做表格。动态生成表格(因为IE 中 tbody不能够写入),使用了tbody.insertRow()和tbody.insertCell()方法。可是获得的结果和IE FF中是相反的。code
IE和FF中是按顺序排列,插入表格。Chrome中是反向的。行和列都是反的。htm
因此,不得已,使用了appendChild方法。blog