关于innerHTML

 

错误信息:htmlfile: 未知的运行时错误

给innerHTML赋值时产生未知的运行时错误
这就是IE叫人郁闷加恶心的地方:

在IE中经常通过innerHTML来改变界面
但也经常出现以上错误,在firefox里则不会。

这是因为IE在对innerHTML进行写操作时会检查element是否具备做为这些内容中html对象容器的要求,
比如将<p>作为容器,它的innerHTML里面放入<li>,马上就会出错。

更加另人郁闷的地方:
<table> <tbody> <tr> 在ie中也无法作为innerHTML的容器使用
在他们里头加入正确的<td>都不行
然而<td>却可以作为容器,放入包括<table>的innerHTML

解决办法
1、确保innerHTML中的html代码正确;
2、确保包含innerHTML的容器正确:一般使用<div>,<span>,<td>

 

  在 IE 下 COL, COLGROUP, FRAMESET, HTML, STYLE, TABLE, TBODY, TFOOT, THEAD, TITLE, TR 这些元素的 innerHTML 属性都是只读的,不能直接操作。

 

 

 

 

 

 

你可能感兴趣的:(html,IE,firefox)