為什麼「aaa」會保留下來?
重要性:1
在以下範例中,呼叫 table.remove()
會從文件中移除表格。
但如果你執行它,你可以看到文字 "aaa"
仍然可見。
為什麼會這樣?
<table id="table">
aaa
<tr>
<td>Test</td>
</tr>
</table>
<script>
alert(table); // the table, as it should be
table.remove();
// why there's still "aaa" in the document?
</script>
任務中的 HTML 不正確。這就是奇怪事情發生的原因。
瀏覽器必須自動修正它。但 <table>
內可能沒有文字:根據規格,只允許使用特定於表格的標籤。因此,瀏覽器在 <table>
之前 顯示 "aaa"
。
現在很明顯,當我們移除表格時,它仍然存在。
這個問題可以透過使用瀏覽器工具探索 DOM 來輕易解答。你會在 <table>
之前看到 "aaa"
。
HTML 標準詳細地說明如何處理有問題的 HTML,而瀏覽器的這種行為是正確的。