注意:当前大多数浏览器都支持HTML
<template>元素,这些元素提供了一种更可靠的方式来从字符串创建元素。
对于较旧的浏览器和node / jsdom:(
<template>在撰写本文时尚不支持元素),请使用以下方法。库用于从HTML字符串中获取DOM元素的操作是相同的(为IE实现,还需要一些额外的工作来解决IE的错误
innerHTML):
function createElementFromHTML(htmlString) { var div = document.createElement('div'); div.innerHTML = htmlString.trim(); // Change this to div.childNodes to support multiple top-level nodes return div.firstChild; }请注意,与HTML模板不同,这不适用于某些不能合法地为a的子元素的元素
<div>,例如
<td>。
如果你已经在使用库,建议你坚持使用库批准的从HTML字符串创建元素的方法:
- 原型在其
update()
方法中内置了此功能。 - jQuery在
jQuery(html)
和jQuery.parseHTML
方法中实现了它。



