</script>
<script>
var tb = document.createElement("table");
var tr = document.createElement("tr");
tr.innerHTML = "trtrtr";
tb.appendChild(tr);
document.getElementsByTagName("body")[0].appendChild(tb);
</script>
</body>
</html>
代码执行完毕以后你会看到, 当table里没有元素的时候, chrome没有自动产生tbody, 如果你不按照正常的写法写table, 而是这样
"<table><tr>111</tr></table>";产生的HTML变成这样”
111<table><tr></tr></table>“, 在jQ中你这样写
$(“<table><tr>111</tr></table>”), 生成的HTML也是这样的
["111","<table><tr></tr></table>"],所以再三强调写html标签的嵌套要符合标准….
在IE中又是例外一回事,通过innerHTML的方式会自动添加tbody, 而且你标签嵌套错了他也不管你,通过appendChild的方式跟其他浏览器一样不会主动生成tbody;

$.support.htmlSerialize
IE678浏览器中不能够通过innerHTML动态生成link标签, 要通过新建标签的形式创建:
<html>
<head>
<meta charset="utf-8" />
<title>兼容</title>
</head>
<body>
<script type="text/javascript"> window.l = (function() {
var el = document.createElement("div"), index = 0;
el.style.cssText = "padding:10px;position:fixed;top:0;right:0;width:10%;border:1px solid #f00;";
return function(message) {
message = message.toString();
if( message ) {
var span = document.createElement("span");
span.innerHTML = (++index) + "信息:<br>"+ message+"<br>";
el.appendChild( span );
};
//IE低版本直接通过createElement创建的元素有parentNode;
if( !el.parentNode || (el.parentNode.toString() === "[object]") ) {
document.body.appendChild(el);
};
return l;
};
})();
</script>
<div class="bounce animated infinite">
bounce
</div>
<div id="link"></div>
<script type="text/javascript">










