javascript:在创建的div中显示h1中的提示文本

时间:2017-10-05 23:24:10

标签: javascript css

我创建了简单的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;
&#13;
&#13;

3 个答案:

答案 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);