innerText和html之间的区别
innerText
, text()
和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>