Javascript 为什么我看不到HTML<;h3>;使用innerHTML或innerText时控制台输出中的标记?
Javascript 为什么我看不到HTML<;h3>;使用innerHTML或innerText时控制台输出中的标记?,javascript,html,innerhtml,getelementbyid,Javascript,Html,Innerhtml,Getelementbyid,consoleouttext=document.getElementById('phrase2').innerText consoleoutputtml=document.getElementById('phrase2').innerHTML console.log(consoleouttext) console.log(consoleoutputtml) 此**[语句][1]**在浏览器控制台中填充。 不能是的后代 所以你的HTML是不正确的 因此,浏览器会更改文档的结构: 因此,浏览器取出,
consoleouttext=document.getElementById('phrase2').innerText
consoleoutputtml=document.getElementById('phrase2').innerHTML
console.log(consoleouttext)
console.log(consoleoutputtml)
此**[语句][1]**在浏览器控制台中填充。
不能是
的后代
- 所以你的HTML是不正确的
- 因此,浏览器会更改文档的结构:
- 因此,浏览器取出
,并将
一分为二
- 所以您的实际文档结构发生了变化
- …由此(每个DOM节点,包括
#text
节点,都位于自己的行上):
- 由于默认情况下,
元素被设置为块级元素的样式,因此会在呈现的页面中导致换行
- 另外,不要使用
innerText
,而是使用textContent
您不能将
嵌套在
中。相关:@SebastianSimon Correct-感谢您纠正我的错误,我现在将更新我的答案。
<p id='phrase2'>
This **[
<h3>statement</h3>
][1]**
<b>populates</b>
in browser Console.
</p>
<p id='phrase2'>This **[</p>
<h3>statement</h3>
"][1]**
<b>populates</b> in browser Console.
<p></p>