2 回答

TA貢獻(xiàn)319條經(jīng)驗(yàn) 獲得超234個(gè)贊
<div?id="test">? ????<span?style="color:red">test1</span>?test2? </div>? <a?href="javascript:alert(test.innerHTML)">innerHTML內(nèi)容</a>? <a?href="javascript:alert(test.innerText)">inerHTML內(nèi)容</a>
共同點(diǎn):innerHTML和innerText都會(huì)把元素內(nèi)內(nèi)容替換掉。
不同點(diǎn):
1,innerHTML:?
也就是從對(duì)象的起始位置到終止位置的全部?jī)?nèi)容,包括Html標(biāo)簽。?
上例中的test.innerHTML的值也就是“<span style="color:red">test1</span>?
test2 ”。?
2,innerText:?
從起始位置到終止位置的內(nèi)容, 但它去除Html標(biāo)簽?
上例中的text.innerTest的值也就是“test1 test2”, 其中span標(biāo)簽去除了。?
值得注意的是,innerHTML是符合W3C標(biāo)準(zhǔn)的屬性,而innerText只適用于IE瀏覽器,因此,盡可能地去使用innerHTML,而少用innerText,如果要輸出不含HTML標(biāo)簽的內(nèi)容,可以使用innerHTML取得包含HTML標(biāo)簽的內(nèi)容后,再用正則表達(dá)式去除HTML標(biāo)簽。

TA貢獻(xiàn)345條經(jīng)驗(yàn) 獲得超309個(gè)贊
innerHTML可以向文檔中輸入標(biāo)簽,而 innerText 只能輸入文字,例子如下:
<!doctype?html> <html?lang="en"> <head> <meta?charset="UTF-8"?/> <title>Document</title> <style?type="text/css"> #div1,#div2{ width:?200px; height:?200px; border:?1px?solid?red; } </style> </head> <body> <div?id="div1"></div> <div?id="div2"></div> </body> <script> var?div1?=?document.getElementById('div1'); var?div2?=?document.getElementById('div2'); div1.innerHTML?=?'div<p>p?標(biāo)簽</p>'; div2.innerText?=?'div<p>p?標(biāo)簽</p>'; </script> </html>
望采納!
添加回答
舉報(bào)