js下 Day02、DOM文档对象模型
一.DOM简介
Document Object Model 文档对象模型
DOM包含了所有HTML元素的属性和方法,以及访问他们的方式;
#二.DOM节点
#1. 什么是节点?
HTML中所有的元素都是一个节点
整个文档是文档节点
所有的标签都是元素节点
标签内的属性是属性节点
标签内的文本是文本
#2. 节点属性
| Ele.nodeName | Ele.nodeType | Ele.nodeValue | |
|---|---|---|---|
| 元素节点 | 大写的标签名 | 1 | null |
| 属性节点 | 属性名 | 2 | 属性值 |
| 文本节点 | #text | 3 | 文本内容 |
| 注释节点 | #comment | 8 | 注释内容 |
| 文档节点 | #document | 9 | null |
***\ ** ** 元素的tagName等价于nodeName
#3. 节点关系
会识别空白文本(不常用)
元素.firstChild 第一个子节点
元素.lastChild 最后一个子节点
元素.childNodes 获取所有的子节点
元素.attributes 获取某个元素的所有属性节点
元素.nextSibling 获取下一个兄弟节点
元素.previousSibling 获取上一个兄弟节点
不识别空白文本
元素.children 获取所有的元素子节点
元素.firstElementChild 获取第一个元素子节点
元素.lastElementChild 获取最后一个元素子节点
元素.nextElementSibling 获取下一个元素兄弟节点
元素.previousElementSibling 获取上一个元素兄弟节点
元素.parentNode 父节点
#三.查找元素
语法:元素.getElementById(“id”)
功能:通过id名查找元素
返回值:DOM对象
语法:元素.getElementsByTagName(“tag”)
功能:通过标签名查找元素
返回值:类数组
语法:元素.getElementsByClassName(“class”)
功能:通过class名查找元素
返回值:类数组
语法:元素.querySelector("css选择器");
功能:根据css选择器查找,只找一个
返回值:DOM对象
语法:元素.querySelectorAll("css选择器");
功能:根据css选择器查找,找所有
返回值:类数组
类数组转数组:
**[... ** 类数组];
Array.from(类数组);
#四.元素类名
classList: 所有类名组成的类数组
classList.add() 添加类名
classList.remove() 删除类名
classList.contains() 检测类名是否存在,返回布尔值
classList.toggle() 类名存在则删除,类名不存在则添加
#五.课堂案例
#1. 选中高亮
效果图
功能思路分析:
\1. 给每一个li绑定点击事件(forEach)
\2. 点击事件中,利用排他思想,先去掉所有标签的类名
\3. 再给当前标签加上类名

#2.手风琴
效果图:

功能思路分析:
\1. 给每一个li绑定点击事件(forEach)
\2. 点击事件中,利用排他思想,先去掉所有标签的类名
\3. 再给当前标签加上类名
#3.选项卡
效果图

功能思路分析:
\1. 淡入淡出效果需要先将所有的图片定位在一起,修改他们的透明度(opacity)
\2. 给每一个导航信息绑定点击事件
\3. 点击事件中,利用排他思想去掉所有的类名,并找到对应下标的图片去掉类名
\4. 给点击的元素加上类名,并找到对应下标的图片加上类名(classList.add)

#六.今日小结
1.节点关系: firstElementChild lastElementChild
previousElementSibling nextElementSibling
children parentNode
2.查找元素: document.querySelector( ‘css选择器’)
document.querySelector( ‘css选择器’)
3.类名操作: classList.add() classList.remove()
classList.contains() classList.toggle()
#七.作业 -- 轮播图
将案例3选项卡改编成轮播图效果
\1. 加上定时器(setInterval)自动轮播
\2. 添加左右箭头,上一页下一页切换
js下 Day02、DOM文档对象模型的更多相关文章
- JS第二部分--DOM文档对象模型
一.DOM的概念 二.DOM可以做什么 三.DOM对象的获取 四.事件的介绍 五.DOM节点标签样式属性的操作 六.DOM节点对象对值的操作 七.DOM节点-标签属性的操作(例如id class sr ...
- 认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法。元素、属性和文本的树结构(节点树)。
认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面代码 ...
- xml.dom——文档对象模型API
文档对象模型,或者“DOM”,是一个跨语言API的World Wide Web Consortium(W3C)来访问和修改XML文档.DOM的实现提供了一个XML文档树结构,或允许客户机代码从头开始建 ...
- Javascript - DOM文档对象模型
文档对象模型(DOM) DOM(Document Object Model,文档对象模型)是一个通过和JavaScript进行内容交互的APIJavascript和DOM一般经常作为一个整体,因为Ja ...
- JavaScirpt(JS)——DOM文档对象模型
一.HTML DOM介绍 HTML DOM 是 W3C 标准(是 HTML 文档对象模型的英文缩写,Document Object Model for HTML). HTML DOM 定义了用于 HT ...
- JavaScript学习笔记7 之DOM文档对象模型
一.什么是DOMDocument Object Model 文档 -------对象 ----模型-------缩写DOM DOM是针对HTML和XML文档的一个API(应用程序编程接口).DOM描绘 ...
- DOM 文档对象模型
document 对象(作为对象),是 DOM 的核心作用:对内容,属性,样式等操作属性:title:设置/返回当前文档的标题url:返回当前文档的 urlinnerHTML:获取指定对象内的内容bg ...
- JavaScript学习总结(一)DOM文档对象模型
一.文档(D) 一个网页运行在浏览器中,他就是一个文档对象. 二.对象(O) "对象"是一种自足的数据集合.与某个特定对象相关联的变量被称为这个对象的属性,只能通过某个对象调用的函 ...
- DOM文档对象模型
随机推荐
- 探究:nuget工具对不再使用的dll文件的处理策略
背景介绍 nuget是.net平台有效的包管理工具,相信每个C#开发者对它都不陌生. 本文我们来探究一下nuget对不再使用的dll文件的处理策略,分为如下2个场景: 场景A:包A1.0原来包含New ...
- 面试必看!靠着这份字节和腾讯的面经,我成功拿下了offer!
准备 敲定了方向和目标后就开始系统准备,主要分为以下几个方面来准备. 算法题 事先已经看过别人的社招面经知道头条每轮技术面都有算法题,而这一块平时练习的比较少,校招时刷的题也忘记了很多.因此系统复习的 ...
- 数据恢复当选EasyRecovery,设备不再受限
我们在逐渐适应信息电子化的同时,也有一些潜在的麻烦接踵而来,其中较为常见的就是文件和数据的保存问题. 显然,设备的存储空间是有限的,这就不可避免地会出现数据被删除.覆盖或丢失的现象,如果丢失的是重要数 ...
- 如何使用ABBYY FineReader 手动管理文档区域
在运用OCR编辑器时,ABBYY FineReader 15(Windows系统)OCR文字识别软件会对扫描仪或数码相机导入的图像进行识别和检测.在识别和检测之前,软件会自动对PDF文档中的文本.图片 ...
- 不想错过网课?不妨用Camtasia录制下来!
2020年突发的这场疫情给我们的日常生活与学习带来了一些不便,却也意外的让网课走红了起来.小学.中学.大学都开始通过媒体工具或直播平台开始授课,但网络授课与实际课堂上课还是有区别的,学生们受到环境影响 ...
- 对KVC和KVO的理解
html { overflow-x: initial !important } :root { --bg-color: #ffffff; --text-color: #333333; --select ...
- web服务器是啥
什么是web服务器 参考 https://www.cnblogs.com/zhaoyl/archive/2012/10/10/2718575.html 了解nginx之前,先了解下什么是web服务器吧 ...
- 基础知识redis详解--【Foam番茄】
Redis 学习方式: 上手就用 基本的理论先学习,然后将知识融汇贯通 nosql讲解 为什么要用Nosql 现在都是大数据时代 大数据一般的数据库无法进行分析处理了 至少要会Springboot+S ...
- charles 常用功能 (六)抓包结果列表指展示关注的接口(focus on 功能)
添加关注的接口 2.启用关注接口,添加过滤的地址 3.重新抓包结果 不在上一步配置中的接口,都会隐藏在other host中
- maven私服拉取jar失败(内网)
解决方案: 1.私服没jar,找私服负责人添加 2.私服有拉不下来,重启nexus服务端(负责人做) 3.本地有jar但是idea中没找到,先执行一下reimport,不行的话,随意修改下pom文件, ...