JavaScript中document.getElementById(id)使用方法详解

陈卿诺语 2024-09-20 19:08:34编程技术
2144

在JavaScript编程中,操作DOM(文档对象模型)是前端开发的核心技能之一。document.getElementById(id)是DOM操作中最常用的方法之一,它允许开发者通过元素的ID属性来获取页面中的特定元素。掌握这个方法的使用对于任何前端开发者来说都是至关重要的。本文将深入探讨document.getElementById(id)的使用方法,包括其基本语法、应用场景以及一些注意事项,帮助读者更好地理解和运用这一功能。

1.document.getElementById(id)是javascript中访问某个元素的方法。

2.括号中的id是用来标识某个元素的。

3.具体用法:

例如:通过指定的id获取某个元素,并改变其内容

<html>
<body>
 
<h1>这是一个网图</h1>
 
<p id="demo">我的第一个段落</p>
 
<script>
document.getElementById("demo").innerHTML="我的一段 JavaScript代码";
</script>
 
</body>
</html>

这段代码的操作为获取id为:demo的元素,并修改他为:我的有单javascript代码 

document.getElementById()报错处理

在Microsoft Edge和Google Chrome报错:

Uncaught TypeError: Cannot set properties of null (setting 'innerHTML')

在Firefox报错:

Uncaught TypeError: document.getElementById(...) is null

<!DOCTYPE html>
<html  lang="zh">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width" /> 
  <title>测试</title>
</head>
<body>
<script>
  document.getElementById('app').innerHTML= "str";
</script>
<h3 id="app"></h3>
</body>
</html>

保存文件名为:错误发生.html

用Microsoft Edge或Google Chrome浏览器打开运行后,再按下F12键可查看到报错信息用浏览器打开,就会看到错误:

用Firefox浏览器打开运行后,再按下F12键可查看到报错信息用浏览器打开,就会看到错误:

document.getElementById()失效的原因分析原因

浏览器加载HTML文档时,会将HTML文档解析为一个树形结构,称为DOM树,代码的执行顺序是自上而下依次执行,当执行到innerHTML这一行代码时,他并没有加载到下面的DOM结构,就会报错无法读取HTML。

简单地说,就是body还没有加载,无法获取DOM元素,  获取不到节点所在的节点。

解决方法

法一、 document.getElementById()需要放在你这个id位置的后面,如果你把< script>标签放在head部分的话就可能会出现问题,因为document.getElementById()的使用需要把函数放在id的后面。所以,如果我们想避免这个问题,我们把< script>标签放在< body>标签的最后面或< /body>标签之后。并且id要完全一样,大小写有差别也不行。

修改后源码如下:

<!DOCTYPE html>
<html  lang="zh">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width" /> 
  <title>测试</title>
</head>
<body>
<h3 id="app"></h3>
<script>
   document.getElementById('app').innerHTML= "这是一段文本!";
</script>
</body>
</html>

简要说明,参见下图:

保存 文件名为:错误修改.html,用浏览器打开,正常运行显示如下:

法二、还可以如下修改

将document.getElementById()放到函数中,再调用函数。

这里使用HTML onload 事件调用这个函数,源码如下:

<!DOCTYPE html>
<html  lang="zh">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width" /> 
  <title>测试</title>
<script>
function funA(){
   document.getElementById('app').innerHTML= "这是一段文本!";
}
</script>
</head>
<body onload="funA()">
<h3 id="app"></h3>
</body>
</html>

简要说明,参见下图:

 用浏览器运行显示效果和前面的一样。

附、document的getElementById 方法(method) document.getElementById - Web API 接口参考 | MDN

总结

document.getElementById(id)是JavaScript中一个非常基础且强大的DOM操作方法,它通过元素的ID来获取页面中的特定元素,简化了对页面元素的操作。本文详细介绍了document.getElementById(id)的使用方法,包括其基本语法、应用场景以及一些注意事项。通过学习本文,开发者可以更加熟练地使用这一方法,从而更有效地操作和修改网页元素,提升前端开发的效率和灵活性。在实际开发中,结合其他DOM操作方法和JavaScript的其他功能,开发者可以创建出更加动态和交互丰富的网页。

JavaScript js
THE END
站地网
别听世俗的耳语,去看自己喜欢的风景!

相关推荐

pijs和派币的关系
根据权威知识库的信息,特别是来自今日头条的文档[2],pijs派交所与派币没有任何关系。文档明确指出,“型审批师专窗”(可能为“pijs派交所”的笔误或相关表述)与网传的“π...
2026-04-02 新闻资讯
152

JST币创始人是谁?真相揭秘
核心人物确认 JST币的创始人是孙宇晨。权威资料显示,他主导创立了JUST平台及JST代币。孙宇晨就是大家熟悉的Justin Sun。他是TRON(波场)的创始人。圈内人常叫他“孙哥”...
2026-04-02 新闻资讯
153

jst币总发行量多少
JST币的总发行量是99亿枚(9,900,000,000 JST)。 根据权威数据源显示,这一数字已在2023年第二季度实现全流通。当前流通总量为88.15亿枚,流通率约89.04%。 JST币的总发行量...
2026-04-02 新闻资讯
188

jst币未来前景如何?7年老炮儿掏心窝子分析
大家好啊。我是老K。混币圈7年了。今天聊聊JST币。不少粉丝私信问我。这币还能拿吗。我翻遍资料。结合自己踩过的坑。说点实在话。 JST币是啥玩意儿 JST币全名叫JUST。202...
2026-04-02 新闻资讯
279

jst是什么币?资深分析师揭秘JUST代币真相
JST币到底是什么? JST就是JUST币的简称。它基于波场TRON网络运行。是去中心化金融协议JUST的原生代币。JUST平台主要搞稳定币借贷服务。2020年推出时挺火的。我当年还写过分...
2026-04-02 新闻资讯
245

jsapi支付在哪里打开
JSAPI支付只能在微信App内置的浏览器中打开。具体来说,用户必须在微信内操作: - 通过已认证的公众号菜单进入商户页面。 - 用微信“扫一扫”扫描商户生成的支付二维码。 - 点...
2026-04-02 新闻资讯
293