0

そのような文字列が与えられた場合:

<img src="image.png" /><p>some text</p>

jQueryを使用せずにdomノードに追加するにはどうすればよいですか?

私はそのようなものを作成できます:

  var string = '<img src="image.png" /><p>some text</p>';
  var div = document.createElement('div');
  div.innerHTML = string;

を使用してノードに追加しますappendChildが、ラッピングせずに元の文字列のみを追加するにはどうすればよいdivですか?

jquery のparseHTMLのようなもので、文字列を解析して html ノードとして返すものが必要です。

4

1 に答える 1

6

insertAdjacentHTML()このタスクに使用できます。

編集

文字列を要素に解析する必要がある場合は、次のようにすることができます。

function parseElements(str) {
    var temp = document.createElement('div'),
        nodes, n,
        elements = [];
    temp.innerHTML = str;
    nodes = temp.childNodes;
    for (n = 0; n < nodes.length; n++) {
        elements.push(nodes[n]);
    }
    return elements;
}
于 2013-03-29T17:35:49.613 に答える