我创建了简单的javascript程序。当我点击div标签时,它会打开提示对话框接受来自用户的文本,创建div并显示上面创建的div文本。现在我的问题是我想在h1中显示提示文本。我用这种方法在h1" newDiv.style =" h1&#34 ;;"中显示文字。但这并不奏效。任何人都可以帮我这个吗?
代码:
window.onload = function() {
var x = document.getElementById("div1");
x.onclick = function() {
var mvytext = prompt("Enter text");
var parent = mvytext.parentNode;
var newDiv = document.createElement("div");
newDiv.id = "myNewDiv";
newDiv.className = "cdiv1";
newDiv.style = "h1";
var txt = document.createTextNode(mvytext);
newDiv.appendChild(txt);
var beforeMe = document.getElementsByTagName("div")[0];
document.body.insertBefore(newDiv, beforeMe);
}
}

#div1 {
background-color: yellow;
}
.cdiv1 {
background-color: #bdefb8;
width: 50%;
height: 100px;
padding: 10px;
margin: 10px 0;
border: 4px solid;
border-color: red;
}

<div style="width: 50%;height: 100px;padding: 10px;margin: 10px 0" id="div1">
<h1>Click me to add a new movie. </h1>
</div>
&#13;
答案 0 :(得分:1)
h1
不是样式,它是HTML标记 - 如果你想创建一个h1元素,那不是DIV。但是,如果要将h1
元素插入到新div中,则不应将其定义为样式,而应将其定义为该div的HTML内容。
答案 1 :(得分:0)
您只需要使用document.createElement(“h1”)创建一个新的h1元素,而不是创建一个div。
答案 2 :(得分:0)
如果您的问题是如何在将文本添加到dom后显示文本... H1是另一种类型的元素,因此您可能需要同时创建div和H1
var newDiv = document.createElement("div");
newDiv.id = "myNewDiv";
newDiv.className = "cdiv1";
var txt = document.createElement("h1"); // this will create the title
txt.innerHTML = mvytext;
newDiv.appendChild(txt);