在原生js中获取元素的方法有很多,那么今天就重点说一下getElementById和getElementByTagName的区别:
1、getElementById前面必须是document;而getElementByTagName前面除了是document也可以是其他的元素;先来看一下简单的html代码

<ul><li></li><li></li><li></li>
</ul>
<ol><li></li><li></li><li></li>
</ol>

例如上面的html,我们若是想要找到ol里的li,那么我们就应该先找到ol,然后找它里面的li,那么js代码获取就应该这么写

//就要先把ol上设个id,然后通过id找到它
var Ol=document.getElementById("ol");
//接下来就找ol里的li
var li=Ol.getElementsByTagName("li");

2、getElementById算是一个静态方法,而getElementByTagName是一个动态方法,需注意的是ByTagName找到的元素肯定是一个集合,就算页面只有一个,那么也就说这个集合的长度为1,和数组类似。

比如,一个页面里没有任何标签,但是我们想给它动态添加几个button,那么我们就应该先给body添加几个,应该这么写:

document.body.innerHTML="<input type='button' value='按钮'/>,<input type='button' value='按钮'/>,<input type='button' value='按钮'/>" ;

给body添加完按钮,那么我们想要找到这几个按钮中的第二个,那么就要通过ByTagName了,具体写法是这样的:

//先获取页面的上的button
var oBtn=document.getElementsByTagName("input");
//ByTagName获取到的相当于是一个集合,和数组类似,但是不太一样,所以也是从0开始的,想要找到第二个,那么后面就必须要跟[1]
oBtn[1].onclick=function(){alert("我是第二个按钮")};

既然这里说到给body添加标签,那么也再说一点,我们也可以改变页面上title里的内容,具体写法是:

//和在body里添加内容是不一样,可以直接写在document后面, 给body添加一定要记得写innerHTML,而title却不一样
document.title="谢谢观看,请留下评论吧!";

getElementById和getElementByTagName的区别相关推荐

  1. getElementByID() getElementsByName() getElementsByTagName()的区别 .

    getElementByID() getElementsByName() getElementsByTagName()的区别 Web标准下可以通过getElementById(), getElemen ...

  2. getElementById与querySelector的区别

    getElementById与querySelector的区别 首先对获取元素的几个方法有所了解 getElementById():返回对拥有指定id的第一个对象的引用 getElementsByNa ...

  3. document.getElementById与getElementsByName的区别(注意后者多个S)

    1:id   就像身分证号,是唯一的,   name   就像姓名一样可以同名 2:一个元素定义了   id   ,引用该元素时直接用   id   属性,而   name   通常用在   form ...

  4. getElementByName与getElementByTagName的区别

    今天写了一个简单的js特效,整半天没有整出效果,原来是自己用错了方法 getElementsByName() 方法与 getelementById()方法类似,但是他查询的是元素的name属性     ...

  5. javascript getElementByID,getElementsByName,getElementsByTagName的区别

    getElementByID,getElementsByName,getElementsByTagName区别 注意:方法区分大小写! 以人来举例说明,人有能标识身份的身份证,有姓名,有类别(大人.小 ...

  6. document.getElementById与getElementByName的区别

    document.getElementById( "id_Number ")   得到的是单个元素 document.getElementsByName( "name & ...

  7. getElementById 和 getElementByName的区别

    getElementById   根据HTML元素指定的ID,获得唯一的一个HTML元素.如访问DIV层对像.图片Img对像等! getElementByName  根据HTML元素指定Name,获得 ...

  8. getElementById()和$(#id)的区别

    转自:https://blog.csdn.net/weixin_41989775/article/details/81063161 1.getElementById()获取的是js对象,$(" ...

  9. firefox与ie 的javascript区别

    Document.form.item 问题 现有问题: 现有代码中存在许多 document.formName.item("itemName") 这样的语句,不能在 firefox ...

最新文章

  1. 日积月累真的很可怕,记住这些编程单词,两周学会敲代码
  2. ASA防火墙学习笔记1-基础篇
  3. 11.PHP与MySQL
  4. 复制当前光标所在单词句子
  5. 最邻近插值法(The nearest interpolation)实现图像缩放
  6. web服务器采用的是什么协议,webservice中采用协议Http,它是指什么意思
  7. 都快下班了,才来写日记
  8. Gartner:2020年企业中无“云”战略将极为罕见
  9. .NET ORM FreeSql 第一个正式版本发布 v1.0.0
  10. php数组里面写路径,使用路径在PHP数组中进行递归搜索
  11. Session.Abandon和Session.Clear有何不同?
  12. 一篇文章教你学会如何使用CSS中的雪碧图(CSS Sprite)
  13. 银行软件的转账测试,网上银行测试转的钱怎么记会计分录?
  14. 如何重装win10应用商店?
  15. innerHTML, innerText, outerHTML, outerText的区别
  16. sscanf 实现_医保 | 好消息!门诊慢病实现山东省内联网结算啦~
  17. 移动vue大转盘抽奖
  18. 21款奔驰S400L升级原厂小柏林之声音响
  19. 如何使用计算机做统计,新手如何快速用电脑软件EXCEL制作表格和简单数据统计...
  20. 手机裁剪音频的软件有哪些?来看看这几个吧

热门文章

  1. 那些优秀的开发者----汪宇杰:从重视细节,到成就技术专家
  2. linux 创建文件指定编码格式,学习笔记:linux 转换指定目录下文件名编码格式
  3. 个人对 Python 数据类型理解整理所得 以及深/浅copy
  4. 阿里开源数据同步神器DataX异构数据源间数据同步同步MySQL与HDFS相互实战
  5. Java拖拽排序工具类
  6. 全球与中国儿童摇摆木马市场深度研究分析报告(2021)
  7. 第四节 基本命令和程序结构控制(1)
  8. windows server2008 定时关闭程序
  9. 转子磁链模型在matlab,转子磁链模型.ppt
  10. c语言如何实现面向对象编程