【发布时间】:2015-06-16 17:35:25
【问题描述】:
如何在表格前后添加createElement(br)?最后我用doc.body.appendChild(p); 尝试了它,但没有任何反应。我不知道我必须在哪里写appendchild
function insertBlock(border)
{
var doc = document.getElementById("frame").contentWindow.document;
var p = doc.createElement("br");
var range = doc.getSelection().getRangeAt(0);
myParent=document.getElementById("frame").contentWindow.document.body;
if (border == true)
{
myTable=document.createElement("table");
myTable.setAttribute("style","border: 1px solid #000000;");
}
else
{
myTable=document.createElement("table");
}
// IE5, IE6 benoetigen unbedingt tbody-Element
myTBody=document.createElement("tbody");
myRow=document.createElement("tr");
myCell=document.createElement("td");
myText=document.createTextNode("Die erste Zelle");
myCell.appendChild(myText);
myRow.appendChild(myCell);
myCell=document.createElement("td");
myText=document.createTextNode("Die zweite Zelle");
myCell.appendChild(myText);
myRow.appendChild(myCell);
myTBody.appendChild(myRow);
myTable.appendChild(myTBody);
myParent.appendChild(myTable);
range.insertNode(myTable);
}
【问题讨论】:
-
你的意思是like this?
-
如果您这样做是为了分隔元素,那么您肯定采取了错误的方法。您应该考虑使用 CSS 添加边距来实现这一点。
<br />应该成为过去。此外,通过如此多的 DOM 操作,我还会尝试查看像 Handlebars 这样的模板库。 handlebarsjs.com -
也就是说,如果您查看代码中的 cmets,它们的目标是 IE5,而 IE5 本身已成为过去。
标签: javascript dom-manipulation createelement