Ich habe gerade angefangen zu lernen JavaScript (richtig: D) und ich habe eine harte Zeit mit dem oben genannten Fehler zu tun. Der Browser, den ich verwende, ist der neueste Google Chrome
auf einem Debian Jessie 64bit System. Der Code wird in dem <script/>
Tag meiner Seite eingebettet:Uncaught TypeError: Kann die Eigenschaft 'appendChild' von null nach dem Aufruf von getElementById() nicht lesen
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head/>
<body bgcolor="white">
<p><u>Counter:</u></p>
<div id="counter"/>
<p><u>Temperature conversion:</u></p>
<div id="temperature"/>
<script type="text/javascript">
function printRange(_from, _to) {
// ...
}
function fahrenheitToCelsius(fahrenheits) {
return 5/9 * (fahrenheits - 32);
}
document.getElementById("counter").innerHTML = printRange(2,-10); // (1)
var fahrenheits = prompt("Enter Fahreheit degrees", 50);
var celsius = fahrenheitToCelsius(fahrenheits);
var para = document.createElement("p");
para.textContent = fahrenheits + "F = " + celsius + "oC";
document.getElementById("temperature").appendChild(para); // (2)
</script>
</body>
</html>
Die document.getElementById("counter")
(markiert mit) adaequat ist jedoch die genannten Fehler treten bei document.getElementById("temperature")
(markiert mit) auch beide obwohl <div/>
s sind im Grunde nacheinander und beide erscheinen vor dem <script/>
Tag, wo diese referenziert werden. Ich verstehe, dass der Fehler von kommt, die null
zurückbringt, aber ich habe nicht die schwächste Idee, WARUM das Skript die gegebene ID durch diesen Funktionsaufruf nicht finden kann.
Sie versuchen, XHTML zu verwenden, aber es ist sehr wahrscheinlich, dass der Browser an, dass und zu interpretieren es als HTML ignoriert. Aus diesem Grund wird die selbstschließende Notation ignoriert. – Pointy