2013-03-31 3 views
1

мне нужно Наладка createElement, который является после быстрой помощи:Javascript createElement

<h1 class="headingTitle"> ENDANGERED <span class="subHeading">Animals</span> </h1> 

Я сделал это, но он выдал ошибку, которая заключается в следующем:

Uncaught Error: NotFoundError: DOM Exception 8

//Adds 'containr' div to the body 
var containerElement = document.createElement('div'); 
containerElement.setAttribute('class','container'); 
document.body.appendChild(containerElement); 

//Add the ENDANGERED ANIMALS title 
var title = document.createElement("h1"); 
title.setAttribute('class', 'headingTitle'); 
var text = document.createTextNode("ENDANGERED"); 

var span = document.createElement('span'); 
span.setAttribute('class', 'subHeading'); 
var subText = document.createTextNode("Animals"); 
span.appendChild(title); 
title.appendChild(text); 

document.getElementsByClassName('container')[0].appendChild(title); 
+2

Где вы получаете эту ошибку? http://jsfiddle.net/4VsD7/ – Antony

+0

Когда вы это выполняете? Вы уверены, что 'document.body' уже доступен в это время? –

ответ

2

Я не совсем уверен, почему вы получаете это исключение (я этого не делаю), но у вас есть несколько перепутанных переменных. Фиксированный, это выглядит следующим образом:

var containerElement = document.createElement('div'); 
containerElement.setAttribute('class', 'container'); 
document.body.appendChild(containerElement); 

var title = document.createElement('h1'); 
title.setAttribute('class', 'headingTitle'); 
title.appendChild(document.createTextNode('ENDANGERED ')); 

var span = document.createElement('span'); 
span.setAttribute('class', 'subHeading'); 
span.appendChild(document.createTextNode('Animals')); 

title.appendChild(span); 
containerElement.appendChild(title); 

Try it.

Смежные вопросы