2016-04-03 6 views
0

Ich habe versucht, ein benutzerdefiniertes Dropdown-Menü zu erstellen, und experimentierte mit verschiedenen Möglichkeiten, es zu tun. AppendChild hörte jedoch plötzlich auf zu arbeiten. Als ich die Chrome-Konsole überprüfte, gab es den Fehler "Uncaught TypeError: Kann die Eigenschaft 'appendChild' von null" für Zeile 26 nicht lesen. Ich habe appendChild schon oft verwendet, und ich hatte noch nie ein solches Problem damit . Ich öffnete sogar ein anderes Dokument, das ich vorher gemacht hatte und kopierte + fügte eine fast identische Zeile hinein und bekam denselben Fehler. Hilfe?AppendChild funktioniert nicht bei bestimmten Dokumenten

<!doctype html> 
<script> 
function changeClassValue() { 
    if(document.getElementById('dropDown').className == "up") { 
      document.getElementById('dropDown').className = "down"; 
      numberValue = 1; 
     } else if(document.getElementById('dropDown').className == "down") { 
      document.getElementById('dropDown').className = "up"; 
      numberValue = 0; 
     } else { 

    } 
changeTextVisibility(); 
} 
function changeTextVisibility() { 
    if(numberValue == 1) { 
      newDiv.appendChild(newParagraph); 
    } else if(numberValue == 0); { 
      newDiv.appendChild(newParagraph); 
} 
} 
var numberValue; 
var newDiv = document.createElement('div'); 
var newParagraph = document.createElement('p'); 
var newParagraphText = document.createTextNode('This is a drop down menu!'); 
document.body.appendChild(newDiv); 
newParagraph.appendChild(newParagraphText); //this is line 26, and is what seems to be broken. 
</script> 
<style> 

</style> 

<body style="background-color: skyblue;"> 
<p id="dropDown" class="up" style="font-size: 25px; padding: 10px  10px;background-color: slategray; display: inline-block;" 
onclick="changeClassValue();"><strong><u> >drop down menu< </u></strong></p> 
</body> 

Antwort

Verwandte Themen