懶人包。
元素中的所有文字 innerText
存取文字內容
備註:只會顯示文字,不包含「標籤」
HTML:
1 | <div class="block"> |
JavaScript:
1 | const element = document.querySelector('.block') // <div class="block">...</div> |
修改文字內容
備註:如果內容有「標籤」的話會被覆寫掉
1 | <div class="block"> |
JavaScript:
1 | const element = document.querySelector('.block') |
Output:
元素中的所有內容 innerHTML
備註:所有內容指的就是包含「標籤」
存取內容
HTML:
1 | <div class="block"> |
JavaScript:
1 | const element = document.querySelector('.block') |
Output:
1 | yoyoyo |
修改內容
HTML:
1 | <div class="block"> |
JavaScript:
1 | const element = document.querySelector('.block') |
Output:
1 | <div class="block"> |
包含元素自己的所有內容 outerHTML
備註:就跟 inner 一樣,只是現在還包含「元素自己」
存取內容
HTML:
1 | <div class="block"> |
JavaScript:
1 | const element = document.querySelector('.block') |
Output:
1 | <div class="block"> |
修改內容
備註:要修改的元素上層必須有「父元素」才可以,下面能改是因為在測試環境裡面 <div>
的上層有 <body>
。
HTML:
1 | <div class="block"> |
JavaScript:
1 | const element = document.querySelector('.block') |
Output:
1 | <span>hehehe</span> |
比 innerHTML 效能更好但比較難懂的 insertAdjacentHTML
注意一下第一個參數有四個選項:
beforebegin
元素的之前(之前的之前)aftereend
元素的之後(之後的之後)afterbegin
元素裡面的第一個beforeend
元素裡面的最後一個
(其實英文意思比較好懂)
1 | <ul class="beforebegin"> |
1 | // 在選到的元素前面插入 <div> |