我认为我有一个可行的替代方案....我相信我已经删除了它,但我找不到它。有没有人知道document.write javascript的替代品?这是代码:
document.write('<div id="myDiv1"></div>');
有人知道document.write javascript的替代方法吗?
答案 0 :(得分:1)
var newDiv = document.createElement("div");
var newContent = document.createTextNode("Whateveryourcontentis");
newDiv.appendChild(newContent);
document.querySelector("#mytarget").appendChild(newDiv)
或者,如果您必须输入更复杂的结构,我会使用DocumentFragment
答案 1 :(得分:0)
document.create<...>
解决方案是最安全的,但是如果你需要插入存储为字符串的原始HTML(仅来自可靠来源,例如,不要将此方法与其他用户发布的内容一起使用,即使现代浏览器禁止使用),您可以使用innerHTML
或outerHTML
:
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,详细了解将innerHTML
或outerHTML
与不受信任的内容一起使用的持续风险。它与使用不可信内容的eval()
一样危险。