0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

javaScriptでhtml要素の追加

Posted at

はじめに

javaScriptでhtml要素を追加したいと思います。
方法は大きく2つあります。

  1. 親になる要素の「innerHTML」にタグの文字列を追加する
  2. 親になる要素の「appendChild()」でDOMオブジェクトを追加する

※jQueryを使用している場合でも、内部では最終的にいずれかになります。
(「html()」はinnerHTML、「append()」はappendChild)

innerHTML

1つずつ「innerHTML」にタグの文字列を追加する

function addElement() {
  const ele = document.getElementById('objParent');
  for(let i = 0; i < 1000; ++i){
    ele.innerHTML += '<div class="none">' + i + '</div>';
  }
}

文字列変数にタグ文字列をためて「innerHTML」に追加する

function addElement() {
  const ele = document.getElementById('objParent');
  let str = '';
  for(let i = 0; i < 1000; ++i){
    str += '<div class="none">' + i + '</div>';
  }
  ele.innerHTML += str;
}

appendChild

1つずつ「appendChild()」でDOMオブジェクトを追加する

function addElement() {
  const ele = document.getElementById('objParent');
  for(let i = 0; i < 10000; ++i){
    const eleDiv = document.createElement('div');
    eleDiv.classList.add('none');
    eleDiv.innerHTML = i;
    ele.appendChild(eleDiv);
  }
}

「DocumentFragment」に対して「appendChild()」で追加して、親要素に「DocumentFragment」を追加する

function addElement() {
  const ele = document.getElementById('objParent');
  const df = document.createDocumentFragment();
  for(let i = 0; i < 10000; ++i){
    const eleDiv = document.createElement('div');
    eleDiv.classList.add('none');
    eleDiv.innerHTML = i;
    df.appendChild(eleDiv);
  }
  ele.appendChild(df);
}

おまけ(要素の削除)

「innerHTML」を削除する

function delElement() {
  const ele = document.getElementById('objParent');
  ele.innerHTML = '';
}

「remove()」で削除する

function delElement() {
  const ele = document.getElementById('objParent').children;
  for(let i = 0; i < ele.length; i++) {
    ele[i].remove()
  }
}
0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?