innerText和html之间的区别

innerTexttext()html()之间的区别是什么?

innerText (如果您使用的是jQuery,则为text() )不包含任何HTML标记。 所以如果你有一个div包含:

 View my profile 

innerText / text()将返回

 View my profile 

html()会返回

 View my profile 

正如dcneiner所指出的, html() / text()是jQuery属性(并且跨浏览器支持),而innerText并非由所有浏览器实现(尽管它适用于最新版本的IE,Safari和Chrome)。

基本上你会想尽可能使用text()不是innerText。 有关使text()非常棒的其他一些内容,请参阅dcneiner的post (或jQuery文档 )。

区别在于innerText是DOM对象上的IE唯一属性,而html()是jQuery对象的函数。

但是,如果您要比较text()html()那么区别在于text()在返回之前从元素的内容中剥离所有HTML,而html()包含HTML。

另外, text()将返回所有匹配元素的文本并将它们连接在一起:

 Hi, how are you? $("span").text(); // returns: Hi, how are you? 

但是html()只返回第一个匹配的项innerHTML属性:

 $("span").html(); // returns: Hi, 

最后一件很酷的事情是.text()自动转义所有HTML:

 $("span:first").text('Hi'); // writes <a>Hi</a>