7_js_dom编程入门1

Objective(本课目标)

  • 掌握获取页面元素的常用方法

  • 掌握事件触发案例

  • 能够区分innerText和innerHTML的区别

  • 综合案例训练

1 DOM 介绍

1.1 什么是DOM
  • 文档对象模型(Document Object Model,简称DOM),是 W3C 组织推荐的处理可扩展标记语言(html或者xhtml)的标准编程接口。

  • 文档对象模型 (*DOM)* 将 web 页面与到脚本或编程语言连接起来。通常是指 JavaScript,但将 HTML、SVG 或 XML 文档建模为对象并不是 JavaScript 语言的一部分。DOM 模型用一个逻辑树来表示一个文档,树的每个分支的终点都是一个节点 (node),每个节点都包含着对象 (objects)。DOM 的方法 (methods) 让你可以用特定方式操作这个树,用这些方法你可以改变文档的结构、样式或者内容。节点可以关联上事件处理器,一旦某一事件被触发了,那些事件处理器就会被执行。

  • DOM 模型用一个逻辑树来表示一个文档:如下

  • 文档:就相当于是document对象。

  • 节点:网页中的所有内容,在文档树中都是节点(标签、属性、文本、注释等),使用node表示

  • 节点包含了属性和文本还有子节点。

  • 课堂代码:01.获取整个页面的元素.html

1.2 为什么要学习DOM?
  • 总结:就是为了使用JavaScript语言操作网页中的元素

1.3. 如何获取网页中的元素

  • 获取页面元素的核心方法

getElementById()
getElementsByName()
getElementsByTagName()
getElementsByClassName()
​
返回文档中与指定的选择器匹配的第一个元素节点
Document.querySelector()
返回包含文档中与指定的选择器匹配的所有元素节点的列表
Document.querySelectorAll()
1.3.1. 获取页面元素的方法1
  • 课堂代码:02.getElementById方法演示.html

  • 课堂代码:03.getElementsByTagName方法演示.html

  • 课堂代码:04.getElementsByName方法演示.html

  • 课堂代码:05.getElementsByClassName方法演示.html

1.3.2. 获取页面元素的方法2
  • 课堂代码:06.querySelector和querySelectorAll.html

1.4. 事件触发

1.4.1. 事件概述
  • 当在 HTML 页面中使用 JavaScript 时,JavaScript 可以对这些事件 做出“反应”。

    • 网页中的事件:根据用户的浏览行为做出的响应。

  • 课堂代码:07.事件的入门案例.html

1.4.2. 常见的鼠标事件

1.4.3 事件案例训练
  • 课堂代码:08.事件案例训练.html

1.5. Js操作元素案例

1.5.1. 修改元素内容
  • 课堂代码:09.innerText和innerHTML的区别.html

1.5.2. 图片切换案例
  • 课堂代码:10.图片切换案例.html

1.5.3. 操作元素属性
  • 课堂代码:11.操作元素属性1.html

  • 课堂代码:12.操作元素属性2.html

1.5.4. 隐藏密码案例讲解
  • 课堂代码:13.隐藏密码案例讲解.html

1.5.5. 关闭广告案例
  • 课堂代码:14.关闭广告案例.html

1.5.6. onblur和onfocus事件讲解
  • 课堂代码:15.onblur和onfocus事件.html

    • focus 事件在元素获取焦点时触发

    • blur当一个元素失去焦点的时候 blur 事件被触发

1.5.7. 更改元素的样式操作
  • 课堂代码:16.更改元素样式.html

  • 课堂代码:17.更改元素样式案例.html

1.5.8. 注册页面加上校验
  • 课堂作业:18.作业讲解_注册页面加上校验.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/271722.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

分享3种常用的前端埋点方式

只有了解用户,我们才能服务好用户,而最接近用户的我们,自然要承担起更多的责任。 那么在一个企业中,我们要如何去了解用户呢? 最直接有效的方式就是了解用户的行为,了解用户在网站中做了什么,呆…

工业交换机的冗余电源设计

在市场上,尤其是在工业级交换机上,我们经常能看到一个支持冗余电源的选项。在大多数工业现场中,我们都知道网络的稳定性是非常关键的。而且,像光伏和煤矿这样的行业经常位于偏远地区,环境条件恶劣。因此,在…

WAVE SUMMIT+ 2023倒计时2天,传文心一言将曝最新进展!

传文心一言将曝最新进展! 亮点一:趋势引领,“扛把子”文心一言将曝新进展亮点二:干货十足,硬核低门槛开发秘籍大放送亮点三:蓄势待发,大模型赋能产业正当时亮点四:群星闪耀&#xff…

FPFA.一种二倍频电路代码描述以及测量详情

一、前言 1、因为需要倍频电路所以找了个二倍频的电路,通过fpga实际测量发现经过倍频后的电路峰值降低。不过这个也正常,因为该电路只要过触发点就会开始发生波形变化,而电路的触发值不是峰值。​​​​​​​ 2、继续对电路做倍频后信号做二…

西南科技大学计算机网络实验三 (路由器基本配置与操作,RIP、OSPF路由协议配置)

一、实验目的 基于网络设备模拟软件,学习和使用路由器的各种基本配置与验证命令,学习和使用路由器的静态路由、RIP、OSPF路由协议配置。 二、实验环境 使用RouterSim Network Visualizer软件来模拟网络设备与网络环境;主机操作系统为windows。 三、实验内容 1、路由器名称…

[足式机器人]Part4 南科大高等机器人控制课 CH11 Bascis of Optimization

本文仅供学习使用 本文参考: B站:CLEAR_LAB 笔者带更新-运动学 课程主讲教师: Prof. Wei Zhang 课程链接 : https://www.wzhanglab.site/teaching/mee-5114-advanced-control-for-robotics/ 南科大高等机器人控制课 Ch11 Bascis o…

android jetpack组件一篇搞定

Jetpack 是 Android 官方推出的一套开发库,其中包含众多的组件,可以让 Android 开发者更快更高效地开发应用程序。Jetpack 组件分为四大部分:架构、行为、UI 和基础组件。 下面详细阐述如何合理使用 Jetpack 组件开发 Android 项目。 1. 熟练…

时尚机密防线升级:迅软DSE助力时装企业应对终端泄密挑战

客户简要介绍 某高级时装是国际知名的奢侈品牌控股及管理运营公司。公司依靠丰富的奢侈品市场运作经验、成熟的品牌管理架构,以及对艺术文化的热爱与尊重,发掘低调且优秀的意大利品牌,将其推向市场取得成功。公司在全球范围内践行多品牌发展…

Mesh网格撞击变形

物理碰撞 两个游戏物体发生碰撞的必要条件: 发生碰撞的两个游戏物体有Collider(碰撞器)组件;其中一个物体有Rigidbody(刚体)组件。 MonoBehaviour中的相关回调函数: 回调函数详解OnCollisio…

支持多医院使用的云HIS医院信息化管理系统源码 SaaS模式

一、什么是HIS系统 HIS系统(Hospital InformationSystem)是医院信息化建设的核心组成部分,它是为了管理和运营医院而设计和开发的一套综合性的信息系统。HIS系统通过整合医院各个部门和业务流程的数据和信息,实现了医院内部的信息…

GNN 图神经网络

GCN 邻接矩阵A:adjacency matrix用来表示节点间的连接关系。 度矩阵D:degree matrix用来表示节点的连接数 特征矩阵X:feature matrix用来表示节点的特征

鸿蒙4升级进展:共137款产品加入升级,Mate 20也能升级了

从华为官方发布的鸿蒙升级进展来看,2018年发布的Mate 20系列机型也开始了鸿蒙4系统升级的测试招募。 5年之期已到,再战5年不是梦想? 另外,从明年一季度的升级预告来看,春节前后升级的主要为穿戴手表产品。 目前&…

求求咯,一定要让幼师姐妹们都刷到啊啊啊啊

幼师姐妹还有不知道的吗???再也不用为了写东西而发愁烦恼了,就是这个写什么都可,各种总结,教案,评语,日报等等 都能写!尊嘟有用啊!!

淄博•关爱天使 质子治疗距普通患者又近一步!质子救助持续发热中

儿童肿瘤近年来有增多趋势,其原因可能有很多,与成人肿瘤一样,儿童肿瘤也分为良性和恶性。当孩子长了良性肿瘤时,开始一般不会有明显的症状,只有在肿瘤长到一定大小,开始挤压周围脏器,并影响这些…

SQL server 数据库练习题及答案(练习3)

一、编程题 公司部门表 department 字段名称 数据类型 约束等 字段描述 id int 主键,自增 部门ID name varchar(32) 非空,唯一 部门名称 description varchar(1024) …

暴力破解(Pikachu)

基于表单的暴力破解 先随便输入一下,然后抓包,进行字典爆破 验证码绕过(on server) server服务端要输入正确的验证码后进行爆破 之后的操作没什么不一样 验证码绕过(on client) 这个也需要输入验证码,但是后面进行字典爆破的时候&#xf…

EasyRecovery数据恢复软件好不好用?值不值得购买?

EasyRecovery是一款专业优秀的数据恢复软件,支持硬盘、光盘、U盘、手机、数码相机等设备,可以尽可能恢复被误删的文件数据(视频、音频、图片等),欢迎下载。 EasyRecovery-2024mac最新版本下载: https://wm.makeding.c…

Matlab论文插图绘制模板第132期—函数等高线填充图

在之前的文章中,分享了Matlab函数折线图的绘制模板: 函数三维折线图: 函数网格曲面图: 函数曲面图: 函数等高线图: 进一步,再来分享一下函数等高线填充图。 先来看一下成品效果: 特…

CleanMyMac X2024免费许可证及功能详细讲解

一些用户反映自己的CleanMyMac卸载不干净?你的卸载方式正确码?当你在Mac上安装使用CleanMyMac后,需要将软件卸载,你会使用怎样方法完成操作呢?小编今天主要讲解如何卸载CleanMyMac以及卸载这款软件时应该注意的事项。一…

JS 正则表达式(正则匹配RegExp)

JavaScript实现对象深拷贝的方法(5种) 知识回调(不懂就看这儿!)场景复现核心干货举例引入关于RegExp对象语法修饰符——区分大小写和全局匹配方括号——查找某个范围内的字符元字符——拥有特殊含义的字符量词RegExp对…