day01-JavaScript中"Uncaught TypeError: Cannot set property 'innerHTML' of null"错误
2024-09-05 11:33:20
转行学开发,代码100天。
初写了最简的一段Js代码,即通过document中的innerHTML方法修改一个<p>标签的内容,报以下错误。 -"Uncaught TypeError: Cannot set property 'innerHTML' of null"错误
代码如下: <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>js-01</title>
<script type="text/javascript">
document.getElementById("pid").innerHTML = "Hello World.";
</script> </head>
<body>
<p id ="pid">Hello</p>
</body>
</html> 解释:错误原因为document中的innerHTML为空,也就是说在加载js文件时,找不到其中调用的对象即文中的<p>标签。 因此需要将js文件引用放置到<p>标签之后,即
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>js-01</title>
</head>
<body>
<p id ="pid">Hello</p>
<script type="text/javascript">
document.getElementById("pid").innerHTML = "Hello World.";
</script>
</body>
</html> 此时网页输出为:
总结:这个小问题暴露了html文件加载顺序的理解问题。即html中的内容是按照HTML本身的先后顺序加载的。因此在引入js时或者直接添加<script>内容时在html内容之后执行。 其他说明见 https://www.cnblogs.com/Walker-lyl/p/5262075.html
最新文章
- C++11之lambda表达式
- 【Visual Lisp】变体与安全数组
- C and C++ 如何嵌套使用
- shp地图解析(不用AE)
- LeetCode: JumpGame 1 and 2
- Android自定义评分控件:RatingStarView
- 并发容器之CopyOnWriteArraySet
- 自定义编译gdal库
- 包建强的培训课程(1):Android App企业级开发
- MySQL之二 yum安装及初识
- 伪静态与重定向--RewriteRule
- 使用IntelliJ IDEA创建Maven聚合工程、创建resources文件夹、ssm框架整合、项目运行一体化
- Git-打标签
- vue2.0+Element-ui实战案例
- mysql更新(五) 完整性约束 外键的变种 三种关系 数据的增删改
- Unity游戏开发之“分层碰撞”
- AtCoder Grand Contest 019 F-yes or no
- 201621123005《Java程序设计》第十二次作业
- bzoj 2081 [Poi2010]Beads hash+调和级数
- Tomcat应用配置