document.write javascript的替代方案?

时间:2014-04-04 21:36:27

标签: javascript

我认为我有一个可行的替代方案....我相信我已经删除了它,但我找不到它。有没有人知道document.write javascript的替代品?这是代码:

document.write('<div id="myDiv1"></div>');

有人知道document.write javascript的替代方法吗?

2 个答案:

答案 0 :(得分:1)

document.create<...>怎么办?

 var newDiv = document.createElement("div"); 
 var newContent = document.createTextNode("Whateveryourcontentis");
 newDiv.appendChild(newContent);
 document.querySelector("#mytarget").appendChild(newDiv)

或者,如果您必须输入更复杂的结构,我会使用DocumentFragment

答案 1 :(得分:0)

document.create<...>解决方案是最安全的,但是如果你需要插入存储为字符串的原始HTML(仅来自可靠来源,例如,不要将此方法与其他用户发布的内容一起使用,即使现代浏览器禁止使用),您可以使用innerHTMLouterHTML

document.body.innerHTML += '<b>I can add raw markup!<\/b><img src="x" onerror=\'alert("But be careful!")\'>';

请参阅https://developer.mozilla.org/en-US/docs/Web/API/Element.innerHTML,详细了解将innerHTMLouterHTML与不受信任的内容一起使用的持续风险。它与使用不可信内容的eval()一样危险。