在一个 HTML 文档中, 我们可以使用 .html() 方法來获取任意一个元素的内容 如果选择器匹配多于一个的元素,那么只有第一个匹配元素的 HTML 内容会被获取
innerHTML 是从对象的起始位置到终止位置的全部内容,包括Html标签
我原本一直以为innerHTML和jquery里的html其实是完全一样的,jquery是多此一举了直到我遇到一次问题
复制代码 代码如下:
复制代码 代码如丅:
发现IE下用jquery能正确显示了,没任何问题
后来查阅资料才知道,原来IE下tbody、tr这些的innerHTML都是只读的不允许写入,而在其他浏览器下则没问题
看看innerHTML属性的缺点,就知道jQuery中html()函数的优点了它是兼容所有浏览的,不存在html5标签不支持的问题不存在href,src属性被转换的问题,不存在某些标签設置不了html串的问题总之就是一句话,用它基本就万事无忧了至少功能的实现上是这样。
看来jQuery的html()函数似乎完美无限了其实不然,它的唍美只表现它的功能上它兼容了所有浏览器,包括IE但偏偏也是IE,尽管兼容了性能并不乐观,如果使用html()函数设置大数据量的html串的话那将是场灾难。