01/10/2018, 17:19
Lỗi Uncaught TypeError: Cannot set property 'textContent' of null
Chào mọi người!
Mình gặp lỗi khi chạy thử ví dụ của firefox như sau:
Uncaught TypeError: Cannot set property 'textContent' of null
at main.js:3
HTML:
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
<body>
<script src="scripts/main.js"></script>
<h1>Mozilla is cool</h1>
<img src="images/firefox.jpg" alt="The firefox logo">
<p id="demo">At Mozilla, we're a global communicate of: </p>
<ul>
<li>technologist</li>
<li>thinkers</li>
<li>builders</li>
</ul>
<p>working together to keep the Internet alive and accessible, so people worldwide can be informed contributors and creators of the Web. We believe this act of human collaboration across an open platform is essential to individual growth and our collective future</p>
<p>Read the <a href="#">Mozilla Mainifesto</a>to learn even more about the values and principles that guide the pursuit of our missions.</p>
</body>
</html>
Script:
/*eslint-env browser*/
var myHeading = document.querySelector('h1');
myHeading.textContent = 'Hello world!';
Làm sao để khắc phục lỗi trên? Cảm ơn!
Bài liên quan
Cách 1:
Cách 2:
Đã fix được! Cảm ơn!
fix được rồi nhưng bạn có biết tại sao không, cái gốc là cần hiểu vì sao chứ không phải là giải quyết được là xong
Mình chưa học javascript nên không hiểu cách 1 nó hoạt động ra sao? Theo tên hàm thì mình đoán rằng khi load trang thì nó sẽ thực hiện hàm đó?
Cách 2 thì sau khi load content thì mới thực hiện script. Vì ban đầu mình để script đầu tiên nên chương trình sẽ load script trước và xảy ra lỗi bởi vì không tìm thấy h1.
Mình chỉ hỏi những điều khi mình không tìm được (tìm sai cách hoặc không đúng). Mình cũng ngại khi hỏi cụ thể quá thì mọi người tại bảo sao lười biếng, không chịu google.
Cảm ơn bạn nhé! Một câu trả lời có tâm!
Nếu bạn ham học hỏi thì cũng không ai nói gì đâu bạn, nếu đang đà hỏi thì cứ hỏi thì sẽ nhiều người chỉ cho bạn