JavaScript DOM

2023-11-07

JavaScript DOM
  • DOM(Document Object Model):文档对象模型。
  • 将 HTML 文档的各个组成部分,封装为对象。借助这些对象,可以对 HTML 文档进行增删改查的动态操作。

在这里插入图片描述

Element元素的获取操作:
  • 具体方法
    在这里插入图片描述
    代码实现
<body>
<div id="div1">div1</div>
<div id="div2">div2</div>
<div class="cls">div3</div>
<div class="cls">div4</div>
<input type="text" name="username"/>
</body>
<script>
    //1. getElementById()   根据id属性值获取元素对象
    let elementById = document.getElementById("div1");
    alert(elementById);

    //2. getElementsByTagName()   根据元素名称获取元素对象们,返回数组
    let elementsByTagName = document.getElementsByTagName("div");
    alert(elementsByTagName.length);

    //3. getElementsByClassName()  根据class属性值获取元素对象们,返回数组
    let getElementsByClassName = document.getElementsByClassName("cls");
    alert(getElementsByClassName.length);

    //4. getElementsByName()   根据name属性值获取元素对象们,返回数组
    let elementsByName = document.getElementsByName("username");
    alert(elementsByName.length);

    //5. 子元素对象.parentElement属性   获取当前元素的父元素
    let body = elementById.parentElement;
    alert(body);
</script>
Element元素的增删改操作:

具体方法
在这里插入图片描述

代码实现:

<body>
<select id="s">
    <option>---请选择---</option>
    <option>北京</option>
    <option>上海</option>
    <option>广州</option>
</select>
</body>
<script>
    //1. createElement()   创建新的元素
    let option = document.createElement("option");
    //为option添加文本内容
    option.innerText = "深圳";

    //2. appendChild()     将子元素添加到父元素中
    let select = document.getElementById("s");
    select.appendChild(option);

    //3. removeChild()     通过父元素删除子元素
    // select.removeChild(option);

    //4. replaceChild()    用新元素替换老元素
    let option2 = document.createElement("option");
    option2.innerText = "杭州";
    select.replaceChild(option2, option);
</script>
Attribute属性的操作:

具体方法:
在这里插入图片描述
代码实现

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>属性的操作</title>
    <style>
        .aColor {
            color: blue;
        }
    </style>
</head>
<body>
<a>点我呀</a>
</body>
<script>
    //1. setAttribute()    添加属性   返回的是一个数组,可以在后面直接加索引取出来
    let a = document.getElementsByTagName("a")[0];
    a.setAttribute("href", "https://itzhuzhu.com");

    //2. getAttribute()    获取属性
    let value = a.getAttribute("href");
    alert(value);

    //3. removeAttribute()  删除属性
    a.removeAttribute("href");

    //4. style属性   添加样式  但是这种方式添加样式不灵活
    a.style.color = "red";

    //5. className属性   添加指定样式   通过类选择器这种方式比较灵活
    a.className = "aColor";
</script>
Text文本的操作:

具体方法
在这里插入图片描述
代码实现:

<body>
<div id="div"></div>
</body>
<script>
    //1. innerText   添加文本内容,不解析标签 只能加普通文本 比如是不能加粗啊
    let div = document.getElementById("div");
    div.innerText = "呵呵,我是第div";

    //2. innerHTML   添加文本内容,解析标签,可以设置样式 这个比较叼
    div.innerHTML = "<b>我粗吗</b>"
</script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript DOM 的相关文章

  • NodeJS 最佳实践:流量控制错误?

    在 Node js 中 我应该使用错误来进行流程控制 还是应该更像异常一样使用它们 我正在 Sails js 中编写一个身份验证控制器和一些单元测试 目前 我的注册方法检查是否存在具有相同用户名的用户 如果用户已存在并具有该用户名 我的模型
  • 使用 jQuery 中止 Ajax 请求

    是否有可能使用 jQuery 我取消 中止 Ajax 请求我还没有收到回复 大多数 jQuery Ajax 方法都会返回 XMLHttpRequest 或等效的 对象 因此您可以使用abort 请参阅文档 中止方法 http msdn mi
  • HTML5 视频结束倒计时

    我可以对 HTML5 视频的结束进行倒计时吗
  • AJAX 加载 WordPress 内容

    我一直在遵循 AJAX 教程来尝试将我的 WordPress 帖子内容加载到我网站的主页上 而无需重新加载页面 我不知道为什么 但是当单击链接时 它仍然导航到页面 而不是将内容加载到我指定的 div 中 不管怎样 这对我来说有点太多了 我希
  • 这是 Firefox 中的错误还是 chrome 主动修复了我做错的事情?

    当麦克风的信号超过设定的阈值时 下面的代码只是将一个框变成红色 它在 Linux 上的 chromium 和 Windows 上的 chrome 上快乐地运行一整天 它在两个平台上的 Firefox 上也运行良好 大约 15 秒 当它在 F
  • Protractor 中 element(...) 和 element(...).getWebElement() 之间的区别

    为什么我们需要element getWebElement over element 当两者的工作原理完全相同时 为什么两个 API 具有相同的功能 Protractor是一个方便的包装WebDriverJS javascript 硒绑定 e
  • Next.js 使用 getServerSideProps 如何将属性从页面传递到组件?

    我正在尝试获取coingecko api访问比特币的实时价格 我正在尝试将 getServerSideProps 的返回道具传递给我的
  • Google Adsense 中的 Javascript 错误

    在我的几个运行 AdSense 的网站上 我收到以下错误 无法将消息发布到 http googleads g doubleclick net http 5Dgoogleads g doubleclick net 收件人有来源http www
  • 如何在cordova中动态加载CSS

    我正在尝试通过 xhr 请求在 cordova 中动态加载 CSS CSS 的加载不是问题 我可以通过 xhr 加载它并通过 HTML5 文件 API 将其存储到文件系统 然后我就可以得到一个完美的 URL 但是如果我通过 javascri
  • 如何在输入Bootstrap Datepicker中仅显示年份?

    我使用以下代码仅显示年份 datepicker datepicker viewMode years minViewMode years 但输入以格式显示 dd mm yyyy 由于我没有格式 我该如何解决这个问题 yyyy 尝试这个 dat
  • 是否可以在 Javascript 中将未声明的变量作为参数传递?

    假设我有一个变量myvar and I don t有一个变量myvar2 我可以毫无问题地运行以下命令 typeof myvar string typeof myvar2 undefined typeof and delete这是我所知道的
  • 未捕获的类型错误:$(...).lightGallery 不是函数

    当我尝试单击该链接时 它会在浏览器控制台中显示 Uncaught TypeError lightGallery is not a function anonymous function index html 250dispatch jque
  • jQuery 可以改变 css 样式定义吗? (不是每个元素的单独CSS)

    我还没有看到任何文档说 jQuery 可以更改任何 CSS 定义 例如更改 td padding 0 2em 1 2em to td padding 0 32em 2em 但要么必须更改整个样式表 要么更改每个元素的类 要么更改每个元素的
  • Indexeddb 添加新值而不是更新现有值

    当尝试更新其中的记录时索引数据库使用put方法 看起来是创造了新的价值而不是改变 根据MDN https developer mozilla org en US docs Web API IDBObjectStore put这是更新记录的方
  • 如何在 javascript 中使用 .net 资源文件

    无论如何 我可以在 javascript 中访问我的资源文件 resx 吗 如果没有 那么是否有任何解决方法可以用不同语言的 javascript 显示消息 如果您的 javascript 在页面中 您可以使用 var globalReso
  • getUserMedia 在 chrome 版本 48.0.2560.0 中无法工作,而在 46.0 中工作

    我的困惑是 我在我的页面中使用了 gerUSerMedia 该页面无法在我们的服务器上工作 而在某些机器上 在那些 chrome 浏览器中具有版本为 48 0 2560 0 的 chrome 时 它 将给出以下警告 getUserMedia
  • 使用默认参数解构 falsy 和 null

    我试图了解如何使用默认参数来解构虚假值和空值 以下是我运行过的一些示例 1 const person email email protected cdn cgi l email protection const email person e
  • 如何使我的滚动到顶部按钮动画流畅

    我的页面上有一个滚动到顶部按钮 但是当我单击它时 它不会滚动到顶部 它只是直接带我到顶部 就像我加载了一个新页面一样 但我需要的是滚动动画 javascript window onscroll function scrollFunction
  • 如何格式化数字? [复制]

    这个问题在这里已经有答案了 我想使用 JavaScript 格式化数字 例如 10 gt 10 00 100 gt 100 00 1000 gt 1 000 00 10000 gt 10 000 00 100000 gt 100 000 0
  • 使用概率选择数组值

    我还有一个作业要做 那就是 从黄色 蓝色和红色中随机选择一种颜色 概率为 黄色 3 7 蓝色 1 7 红色 3 7 我知道我可以通过使用类似的方法来解决这个问题 黄黄黄蓝红红红 但我认为这在编程上不是很好 因为当我碰巧发生这种情况时 我将不

随机推荐

  • java 字符串转字节数据及字节数组转字符串

    BaseToSObj sysBean DataUtil getSysBean 转字节数组 byte bytes new Gson toJson sysBean getBytes String s Arrays toString bytes
  • presto的hive connector连接以及JDBC访问(包含kerberos方式)

    参考资料 https prestodb io docs current connector hive html 前言 presto支持hive connector 并支持连接多个hive connector 还支持kerberos相关 配置
  • 三极管工作原理分析,精辟、透彻

    吴工 硬件工程师炼成之路 2021 10 08 20 30 我一直在梳理器件的知识 二极管已经梳理完了 前面也插着写了些MOS管的相关内容 一直没梳理过三极管 为了完善知识体系 最近呢 又去学了学 查了查 在网上找到一个比较好的文章 关于如
  • AttributeError: 'int' object has no attribute 'id'

    一 问题描述 学了Appium的基础 就开始实践Appium对公司的app进行自动化测试 在照片那里 用了TouchAction 一直报错 AttributeError int object has no attribute id 觉得很是
  • Win10家庭版Hyper-V出坑(完美卸载,冲突解决以及Device Guard问题)

    如果你按照我这篇文章 Win10家庭版 开启Hyper V 或者随便什么地方看到的方法 在Win10家庭版开启Hyper V了 但是又和我一样用不惯这玩意儿 想要回到Vmware的怀抱 那么恭喜你 坑来了 一 关闭 首先你会看到如下提示 w
  • Python就业前景和工资待遇怎么样

    Python自身强大的优势决定其不可限量的发展前景 而且从最新Python招聘岗位需求来看 Python工程师的岗位需求量是非常大的 Python的就业前景如何 后端开发 前端开发 爬虫开发 人工智能 金融量化分析 大数据 物联网等 Pyt
  • 【SLAM学习笔记3】ORB-SLAM2中的方向梯度直方图(HOG,Histogram of Gradient)

    文章目录 前言 一 基础知识 1 梯度 gradient 2 一阶微分 3 图像梯度计算 图像微分 的应用 4 卷积 二 方向梯度直方图 旋转直方图 1 HOG特征 1 核心思想 2 实现方法 3 进一步优化 4 优点 具有尺寸不变性和光照
  • 模式标记

    另一可供选择的compile 方法接受影响正则表达式的匹配行为的标记作为其参数 PatternPattern compile String regex int flag 在这些标记中 特别有用的是 Pattern CASE INSENSIT
  • Android跨进程通信导论,使用指南

    前言 不清楚你是不是知道 咱们中国有相当大的一部分软件公司 他们的软件开发团队都小的可怜 甚至只有1 3个人 连一个项目小组都算不上 而这样的团队却要承担一个软件公司所有的软件开发任务 在软件上线和开发的关键阶段需要团队的成员没日没夜的加班
  • Arduino+ESP8266上传至oneNet云

    一 硬件简介 1 Arudino 是一种开源的电子平台 该平台最初主要基于AVR单片机的微控制器和相应的开发软件 包含硬件 各种型号的Arduino板 和软件 Arduino IDE 2 ESP8266 是深圳安信可科技有限公司开发的基于乐
  • 2021林西一中高考成绩查询,2021年内蒙古高考状元多少分,今年内蒙古高考状元资料名单...

    2021年内蒙古高考成绩发榜时 最引起了人们的好奇的就是最高分的考生是谁 毕竟高考最高分乃一个省市地区在高考当中最耀眼的存在 大家好奇也实属正常 2021年内蒙古高考最高分是谁呢 目前暂无公布消息 小编为大家整理了历年内蒙古高考最高分的相关
  • mysql开启binlog并配置定期删除以及文件大小,删库跑路之数据恢复

    目录 一 开启并binlog日志并配置 1 配置文件 2 参数说明 log bin log bin basename binlog error action binlog format binlog do db和binlog ignore
  • 雷达流量计的工作原理及安装注意事项

    雷达流量计的工作原理 平面雷达水位计是一款用于地表水液位监测的非接触式平面雷达水位计 基于精确测量的电磁波测距技术 传感器发射电磁波照射水面并接收其回波 由此获得水面至电磁波发射点的距离 距离变化率 径向速度 方位 高度等信息 平面雷达水位
  • uni app vue 设置页面背景色

    vue页面设置页面背景色 总是无法充满页面高度 最关键代码一句 min height 100 page width 100 background color f6f6f6 min height 100
  • gin 框架中的 gin.Context

    前言 Context 是 gin 中最重要的部分 例如 它允许我们在中间件之间传递变量 管理流程 验证请求的 JSON 并呈现 JSON 响应 Context 中封装了原生的 Go HTTP 请求和响应对象 同时还提供了一些方法 用于获取请
  • 一步解决Computed property “xxx” was assigned to but it has no setter.报错

    问题描述 用uniapp开发小程序过程中遇到了Computed property xxx was assigned to but it has no setter 这个报错 看来是计算属性出现了问题 不过这个报错更像是警告 因为该计算属性可
  • 蒲公英R300A 4G路由器,远程监控PLC教程

    一 创建智能组网 1 创建网络添加成员 登陆蒲公英网络管理平台 https console sdwan oray com 进行智能组网 组网教程戳我 如图 创建蒲公英智能组网成功 可以看到网络内的路由及客户端成员 硬件成员 R300A路由器
  • antv G2在Vue中基本使用

    装载数据 语雀 npm install antv g2 save V2 div div import as G2 from antv g2 mounted this chart new G2 Chart container c1 width
  • $nextTick是什么

    概述 nextTick 是一个用于在DOM更新完成后执行回调函数的方法 vue的数据更新是一种延迟异步更新 在vue中修改数据后 页面不会立刻更新 而是开启一个队列 并且缓存同一轮事件循环中的所有数据改变 在缓冲时会除去重复的操作 等到下一
  • JavaScript DOM

    JavaScript DOM DOM Document Object Model 文档对象模型 将 HTML 文档的各个组成部分 封装为对象 借助这些对象 可以对 HTML 文档进行增删改查的动态操作 Element元素的获取操作 具体方法