给出一个类似的字符串:
<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节点返回。
答案 0 :(得分:5)
您可以使用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;
}