JavaScript elementオブジェクト

JavaScriptのelementオブジェクトはHTML及びXHTMLの要素を表現するオブジェクトであり、DOMのHTMLElementインタフェースが実装されている。

目次

  1. プロパティ
    1. attribute
    2. clientHeight
    3. clientWidth
    4. innerHTML
    5. namespaceURI
    6. ownerDocument
    7. scrollHeight
    8. scrollLeft
    9. scrollTop
    10. scrollWidth
    11. style
    12. title
    13. lang
    14. translate
    15. dir
    16. hidden
    17. insert
    18. accessKey
    19. accessKeyLabel
    20. draggable
    21. spellcheck
    22. autocapitalize
    23. innerText
    24. outerText
    25. popover
    26. namespaceURI
    27. prefix
    28. localName
    29. tagName
    30. id
    31. className
    32. classList
    33. slot
    34. attributes
    35. nodeType
    36. nodeName
    37. parentNode
    38. childNodes
    39. firstChild
    40. lastChild
    41. previousSibling
    42. nextSibling
    43. nodeValue
    44. textContent
  2. メソッド
    1. compareDocumentPosition
    2. getAttibuteNode
    3. hasAttributes
    4. hasChildNodes
    5. isDefaultNamespace
    6. removeAttribute
    7. removeAttributeNode
    8. setAttributeNode
    9. toString
    10. getAttributeNames
    11. getAttribute
    12. getAttributeNS
    13. setAttribute
    14. setAttributeNS
    15. removeAttribute
    16. removeAttributeNS
    17. toggleAttribute
    18. hasAttribute
    19. hasAttributeNS
    20. setAttributeNode
    21. setAttributeNodeNS
    22. removeAttributeNode
    23. attachShadow
    24. closest
    25. matches
    26. webkitMatchesSelector
    27. getElementsByTagName
    28. getElementsByTagNameNS
    29. getElementsByClassName
    30. insertAdjacentElement
    31. insertAdjacentText
    32. insertBefore
    33. appendChild
    34. replaceChild
    35. removeChild
    36. addEventListener
    37. dispatchEvent
    38. removeEventListener

プロパティ

className

element オブジェクトの className プロパティは、HTML要素のすべてのクラスを表わす。

e = document.getElementById('#id')
e.className = 'container mx-auto'

classList

element オブジェクトの className プロパティは、HTML要素の個々のクラスを表わす。

HTML要素にクラスを追加する。

e = document.getElementById('#id')
e.classList.add('container')

HTML要素からクラスを削除する。

e = document.getElementById('#id')
e.classList.remove('container')

指定したクラスがHTML要素にあれば削除し、なければ追加する。

e = document.getElementById('#id')
e.classList.toggle('container')

指定したクラスがHTML要素にあればtrueを返し、なければfalseを返す。

e = document.getElementById('#id')
if (e.classList.contains('container')) {
  /* do something */
} 

classListから個々のクラスに対して繰返し処理を行うことができる。

e = document.getElementById('#id')
if (cls in e.classList) {
  console.log(cls)
} 

accessKey

要素の accesskey 属性

autocapitalize

要素の autocapitalize 属性

autocorrect

要素の autocorrect 属性

dir

要素の dir 属性

document.getElementById('p1').dir = 'ltr'
let dir = document.getElementById('p1').dir

draggable

要素の draggable 属性

hidden

要素の hidden 属性

inert

要素の inert 属性

lang

要素の lang 属性

document.getElementById('p1').lang = 'en'
let lang = document.getElementById('p1').lang

spellcheck

要素の spellcheck 属性

let textArea1 = document.getElementById('textarea1');
textArea1.spellcheck = 'false';

title

要素の title 属性

document.getElementById('p1').title = 'example'
let title = document.getElementById('p1').title

translate

要素の translate 属性

writingSuggestions

要素の writingsuggestions 属性

メソッド

setAttribute

要素に属性を追加する。

element.setAttribute(name, value)
element
属性を追加する要素のオブジェクト
name
要素へ追加する属性の名前
value
要素へ追加する属性の値

removeAttribute

要素から属性を削除する。

element.removeAttribute(name)
element
属性を削除する要素のオブジェクト
name
要素から削除する属性の名前

appendChild

要素オブジェクトの appendChild メソッドは、この要素に子要素を追加するメソッドである。

テキストノードを新たに生成するJavaScriptを示す。

<p id="p1"></p>
<script>
  let textNode = document.createTextNode('<div>foo</div>');
  let element = document.getElementById('p1');
  element.appendChild(textNode);
</script>

参考文献

Web Hypertext Application Technology Working Group (2022) "Semantics, structure, and APIs of HTML documents" HTML Living Standard