outerHTML
outerHTMLはouterHTMLを所有している要素を指定した文字列の内容に置き換える。
DEMO
element.insertAdjacentHTML(position, html)
element自身や子要素の前後にhtmlを挿入する。
positionには以下の4つを指定することができる。
- beforebegin
- elementの前にhtmlを挿入
- afterend
- elementの後にhtmlを挿入
- afterbegin
- elementの最初の子要素の前にhtmlを挿入
- beforeend
- elementの最後の子要素の後にhtmlを挿入
parentElement.insertBefore(insert_elem, child_elem)
parentElementの子要素の前に挿入対象の要素を挿入する。
基準となる要素がparentElementの子要素でない場合エラーになる。
DEMO
NodeListはArray.prototypeのメソッドを適用することができる
Array.prototype.slice.call(nodeList)でnodeListをArrayに変換することができる。
DEMO
es6ではArray.from()でも変換することができる。
firstChildとfirstElementChildの違い
firstChildは第1子Node(TextNodeを含む)を返す。
firstChildElementは第1子Elementを返す。
DEMO
node.isEqualNode(someNode)
ノードの種類や属性が同じ時trueを返す。
DEMO
document.activeElement
document.activeElementはフォーカスがあたっている要素を返す。
document.hasFocus()はフォーカスがあたっている要素がある場合はtrueを返す。
elem.classList
classListリストは要素のclassを編集する際に利用する。
DOMTokenListの一種である。
elem.classList.add(class_name)#class_nameを追加
elem.classList.remove(class_name)#class_nameを削除
elem.classList.toggle(class_name)#class_nameをドグル
elem.classList.contains(class_name)#class_nameがclassListに含まれるか
elem.classList.length#classListの長さ
elem.matchesSelector(selector)
要素が指定したセレクタの対象か判定する。
elem.scrollIntoView()
要素が画面に出てくるまでスクロールする
CSSStyleSheet
スタイルシートの内容を動的に変更する。
CSSを無効にする