Я новичок в JavaScript, и у меня есть задание. Один вопрос требует, чтобы мы добавили новый textNode к тегу <p>
. Но мой appendChild не хочет работать. Весь мой другой код работает отлично и делает то, что он должен. Очевидно, я делаю что-то неправильно.appendChild не работает. Новое в Javascript
EDIT: В моей консоли я получаю сообщение об ошибке: неперехваченный TypeError: Невозможно вызвать метод «AppendChild» нулевого
<head>
<style type="text/css">
#demo {
font-family: Verdana, Geneva, sans-serif;
font-size: 14px;
font-style: italic;
background-color: #996;
height: 25px;
width: 400px;
padding: 20px;
}
</style>
</head>
<body>
<p id = "demo">Existential div asks: "Why I am I here?"</p>
<script>
document.title="Tag, you're it!";
var parent=document.body;
var child=document.getElementById("demo");
parent.removeChild(child);
var para=document.createElement("p");
var node=document.createTextNode("The quick brown fox jumps over the lazy dog.");
para.appendChild(node);
var element=document.getElementById("demo");
element.appendChild(para);
with(para){
color: "#FFF";
fontFamily : "Arial";
backgroundColor: "#345";
fontSize: "30px";
textAlign: "center";
width: "600px";
height: "200px";
padding: "20px";
margin: "0px auto";
};
</script>
</body>
Спасибо, сменил. И да, я получаю сообщение об ошибке в консоли. Забыл упомянуть в главном посте. В нем говорится: «Uncaught TypeError: не удается вызвать метод« appendChild »из null» –
Вы удаляете абзац так: var element = document.getElementById («demo»); 'будет терпеть неудачу. – j08691
Я не пытаюсь добавить к «демо». После удаления демонстрации я создаю новый элемент «p». И затем я пытаюсь добавить новый textNode к «p». Поэтому я должен изменить его из 'var element = document.getElementById (" demo ");' to 'var element = document.getElementById (" p ")' ?? –