JS获取div里面的其它元素的两种方法

这篇具有很好参考价值的文章主要介绍了JS获取div里面的其它元素的两种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

通过JS的DOM获取div里面的其它元素的两种方法   getElementsByTagName 和 querySelector ,具体使用方法如下:

<div id="box">
        <input type="text" id="h1" value="h1">
        <input type="text" id="h2" value="h2">
</div>

getElementsByTagName的获取方式:

<script>
        var box = document.getElementById('box')
        var input = box.getElementsByTagName('input')[0];
        input.style.backgroundColor = 'pink'
</script>

 这里的 ('input')[0]  因为getElementsByTagName获取的是一个伪数组集合,不能直接注册事件,必须要提取单个元素才可以,[0] 是索引号。效果图如下:

js获取div下的子元素,javascript,前端,html

如果可以改为 [1]  就是 h2 改变背景,如果需要获取所有的input,可以用循环 

var box = document.getElementById('box')
var input = box.getElementsByTagName('input');
for (var i = 0; i < input.length; i++) {
      input[i].style.backgroundColor = 'pink'
}

js获取div下的子元素,javascript,前端,html 

querySelector的获取方式:

var input = document.querySelector('#box input')
input.style.backgroundColor = 'pink';

这种方法是实际开发中常用的方法,比较严谨一些,不过 querySelector 只能获取第一个,如果想要获取全部可以使用:

var input = document.querySelectorAll('input')
for (var i = 0; i < input.length; i++) {
     input[i].style.backgroundColor = 'pink'
}

注意:getElementsByTagName、getElementsByClassName、getElementsByName、querySelectorAll 获取的都是伪数组集合,都不能直接注册事件,需要在后面加上索引文章来源地址https://www.toymoban.com/news/detail-551379.html

到了这里,关于JS获取div里面的其它元素的两种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • js获取Element元素的常用方法

    js中获取Element元素的常用方法有以下四种: 【方法一】根据元素ID:document.getElementById() 【方法二】根据元素标签:document.getElementsByTagName() 【方法三】根据元素class名:document.getElementsByClassName() 【方法四】根据元素name名:document.getElementsByName() 需要注意的是, 方法中Element后

    2024年02月06日
    浏览(47)
  • JS 获取 HTML DOM 元素的方法

     

    2024年02月11日
    浏览(43)
  • JS中获取dom元素高度相关方法

    javascript中获取dom元素高度和宽度的属性如下: 网页可视区域宽: document.body.clientWidth 网页可视区域高: document.body.clientHeight 网页可视区域宽: document.body.offsetWidth (包括边距的宽) 网页可视区域高: document.body.offsetHeight (包括边距的高) 网页正文全文宽: document.body.scrollWidth

    2024年02月07日
    浏览(50)
  • js获取dom元素宽高的方法

    这种⽅法,有⼀定局限性,只能取 内联样式 的宽⾼。 这种⽅法,也是有⼀定局限性,不过我们三种常⽤css样式都能获取。但是 只⽀持 IE ,其它浏览器不⽀持 ⽀持所有浏览器,兼容性好 这种⽅法,⼀般⽤于计算元素的绝对位置,根据视窗左上⻆的点来算的。可以拿到四个元

    2024年02月15日
    浏览(50)
  • java 数组新增元素的两种方法

    数组在使用前,长度就已固定,所以原数组长度是不能再改变了,基于此,提供如下两种方式,添加元素数据 1创建一个新数组,长度为原数组加1,然后将原数组数据添加到新数组,最后再添加需要的新数据         String[] s1 = {\\\"a\\\",\\\"b\\\",\\\"c\\\"};         String[] s2 = new String[s1.l

    2024年02月16日
    浏览(38)
  • java 数组添加元素的两种方法

    说在前面 数组在使用前,长度就已固定,所以原数组长度是不能再改变了,基于此,提供如下两种方式,给数组添加数据。具体代码如下 方式一: 创建一个新数组,长度为原数组加1,然后将原数组数据添加到新数组,最后再添加需要的新数据 运行结果 方式二: 先把数组转

    2024年02月11日
    浏览(54)
  • python元组tuple添加元素的两种方法

    方法一 :可以使用python内置的__add__()方法,使用该方法为python元组添加元素时,需要使用元组来对象来进行调用,然后将需要添加的元素,以元组的数据类型进行传递,该方法并需修改调用对象,而是以新的元组进行返回,具体可见下方的实例代码。 方法二 :将python的元组

    2024年02月12日
    浏览(37)
  • js - 图片base64转file文件的两种方式

    最近项目中需要实现把图片的base64编码转成file文件的功能,然后再上传至服务器。 1.通过new File()将base64转换成file文件,此方式需考虑浏览器兼容问题 2.先将base64转换成blob,再将blob转换成file文件,此方法不存在浏览器不兼容问题 vue中配合vant的uploader上传组件使用案例: 打

    2024年02月14日
    浏览(49)
  • 在Leaflet中使用Turf.js生成范围多边形的两种实现方式

    目录 前言 一、场景需求 1、Leaflet.js的不足 2、Turf.js 二、原始数据展示 1、点位数据展示  2、定义样式 3、定位数据初始化 三、Turfjs中bbox生成  1、官网讲解 2、轨迹bbox生成 四、Turfjs生成外包多边形 1、官网例子 2、凸多边形生成 总结         在一些共享出行的应用地图中

    2024年03月14日
    浏览(90)
  • 【鸿蒙(HarmonyOS)】UI开发的两种范式:ArkTS、JS(以登录界面开发为例进行对比)

    之后关于HarmonyOS技术的分享,将会持续使用到以下版本 HarmonyOS:3.1/4.0 SDK:API 9 Release Node.js:v14.20.1 DevEco Studio: 3.1.0 HarmonyOS应用的UI开发依赖于 方舟开发框架(简称ArkUI) 。 根据官方介绍,ArkUI提供了UI语法、丰富的UI功能(组件、布局、动画以及交互事件),以及实时界面

    2024年02月08日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包