Why I getting error in browser?
TypeError: document.body is null
Code is working well in JSfiddle.
HTML
Execute the code when the DOM loads. Wrap your logic in an event listener for DOMContentLoaded
.
document.addEventListener('DOMContentLoaded', function () {
// ...
});
The reason it worked in JSFiddle is because the JS is executed on load (that's the default option in JSFiddle).
Alternatively, depending on when you need the logic to be executed, you could also use:
window.addEventListener('load', function () {
// ...
});
See: Difference between DOMContentLoaded and Load events
Your document.body
is not crated or existed yet. If you want to append child to document.body
or do anything with document.body
in your javascript then put your javascript cod or link of js file in the end of body tag.
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<script src="jsscript.js"></script>
</body>
</html>