javascript:从字符串创建HTMLElement

gui*_* 桂林 7 javascript

我想通过javasacript从字符串创建HTMLElement,就像这样

element = createHTMLElement('<table class="list"><tr><td><a href="xxx">title</a></td></tr></table>')
element.addEventListener(...)
parent.appendChild(element)
Run Code Online (Sandbox Code Playgroud)

我不想使用jQuery

EFr*_*aim 21

您可以创建一些虚拟外部元素:

  var div = document.createElement('DIV');
Run Code Online (Sandbox Code Playgroud)

然后:

  div.innerHTML = '<table class="list"><tr><td><a href="xxx">title</a></td></tr></table>'
Run Code Online (Sandbox Code Playgroud)

然后从childNodes中提取它:

  div.firstChild
Run Code Online (Sandbox Code Playgroud)

innerHTML是Microsoft扩展,但在所有现代浏览器上都受到普遍支持.

当然,你可以形成一个简单的功能,从这些片段做你想要的.