javaScript(WebAPI) - 教程

news/2025/9/20 12:16:50/文章来源:https://www.cnblogs.com/yfceshi/p/19102245

1.什么是 WebAPI

2.什么是 API

API 是一个更广义的概念. WebAPI 是一个更具体的概念, 特指 DOM+BOM .所谓的 API 本质上就是一些现成的函数/对象, 让程序猿拿来就用, 方便开发.

3.什么是 DOM

1.DOM

一个页面的结构是一个树形结构, 称为 DOM 树

重要概念:

4.获取元素

这部分工作类似于 CSS 选择器的功能.

1.querySelector(选中一个元素)

2.querySelectorAll(选中一组元素)

5.事件

1.点击事件

  1. 事件源:触发事件的元素,这里就是 <input> 按钮(变量 button)。
  2. 事件类型:用户的操作类型,这里是 “点击”(onclick)。
  3. 事件处理程序:事件触发后执行的函数(即 function() { alert("hello") }

2.键盘按钮事件

1.按下

2.抬起

3.例题:shift

6.获取&修改元素属性

1. innerText

可以看到, 通过 innerText 无法获取到 div 内部的 html 结构, 只能得到文本内容.
修改页面的时候也会把 span 标签当成文本进行设置

2. innerHTML

可以看到 innerHTML不光能获取到页面的 html 结构, 同时也能修改结构. 并且获取到的内容保留的空 格和换行.

7.获取&修改表单元素属性_案例

demo6.html

表单(主要是指 input 标签)的以下属性都可以通过 DOM 来修改

案例:播放暂停按钮文本切换

案例:计算器实现

Document
function add(){
let add=document.querySelector('.input');
add.value=parseInt(add.value)+1;
}
function Min(){
let min=document.querySelector('.input');
min.value=parseInt(min.value)-1;
}
let btn=document.querySelector('.btn')
function Onclick(){
if(btn.value=="播放"){
btn.value="暂停"
}else{
btn.value="播放"
}
}

案例:全选/取消全选按钮

Document
我全都要
貂蝉
小乔
妲己
let all=document.querySelector(".all");
let select=document.querySelectorAll(".select");
function Selectall(){
for(i=0;i

8.获取/修改样式属性

1.行内样式操作

Document
哈哈哈
function Onclick(){
let size1=document.querySelector('div');
console.log(size1.style)
let size2=parseInt(size1.style.fontSize)+10
// size1.style.fontSize=size2+"px"
size1.style.cssText='font-size'+size2+"px"
}

下面这种要用到类名样式

2.类名样式操作

Document
.light{
background-color: aliceblue ;
color: black;
width: 100%;
height: 100%;
}
body,html{
width: 100%;
height: 100%;
}
.dark{
background-color: black;
color: white;
width: 100%;
height: 100%;
}
这是一段话
这是一段话
这是一段话
这是一段话
这是一段话
function Onclick(){
let hua=document.querySelector('div')
//如果是白天则换成黑夜,与之相反
if(hua.className=="light"){
hua.className="dark"
}else{
hua.className="light"
}
}

9.操作节点

1.节点创建

2.插入节点

Document
这是一个p标签1
这是一个p标签2
let em1=document.createElement('h1')
em1.innerHTML='这是创建的节点1'
let em2=document.createElement('h1')
em2.innerHTML='这是创建的节点2'
let div=document.querySelector('div')
div.appendChild(em1)
div.insertBefore(em2,document.querySelector('.p1'))

注意1: 如果针对一个节点插入两次, 则只有最后一次生效(相当于把元素移动了)

注意2: 一旦一个节点插入完毕, 再针对刚刚的节点对象进行修改, 能够同步影响到 DOM 树中的内容.

3.删除节点

Document
1
2
3
4
let parent=document.querySelector('.container')
let child=document.querySelector('#delete')
let elemet=parent.removeChild(child)
console.dir(elemet)
parent.appendChild(child)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows使用es-client插件

下载插件并集成到浏览器 在各大浏览器应用商店搜索es-client,这里以edge浏览器作为演示,bing搜索“微软商店 插件 es-clint”,搜索结果第一条记录点击进去.点击右边的“获取”按钮,将插件添加到浏览器中。这里由于…

AI学习日记 - 实践

AI学习日记 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Co…

es中的端点

_doc端点 用于对单个****文档的crud操作(如创建、获取、更新、删除单个文档),常见用法如下向指定索引添加新文档: POST /索引名/_docES会自动生成唯一文档ID,例:POST /books/_doc → 向 books索引添加新文档。 根…

解码C语言宏

预处理概述 基本概念 预处理是C语言编译过程的第一步,所有以#开头的指令都由预处理器处理,这些指令不属于C语言语法本身。 预处理指令类型头文件包含:#include 宏定义:#define 宏取消:#undef 条件编译:#if, #ifd…

es中的索引

索引的概念 在ES中,索引(Index) 是核心的数据存储和检索单元,其本质是一组结构相似的文档(Document)的集合,同时包含了文档的元数据(如字段类型、分词器配置)和检索所需的 “倒排索引” 结构。ES软件的索引类…

es中的数据类型

字符串 文本(Text)作用:适用于全文搜索的文本字段,例如文章内容、电子邮件正文、产品描述等长文本。 特点:ES会对文本内容进行分词处理,将字符串转换为单个术语的列表,支持全文搜索和模糊查询。但通常不用于排序或…

防御安全播客第214期:数据泄露与漏洞攻防实战

本期播客深入探讨GDPR隐私规则与安全的平衡、伊朗黑客攻击美国大学数据泄露事件、Guccifer 2.0身份揭秘、Orbitz支付卡盗窃案及SamSam勒索软件攻击亚特兰大事件,并分析网络犯罪分子最常利用的顶级漏洞。媒体链接音频源…

windows使用kibana

下载Kibana安装包 https://www.elastic.co/downloads/past-releases#kibana(如果知道版本号也可以直接将最后的kibana换成对应的版本号)上图中两个下拉框分别选择对应的产品和版本,选择好之后点击右边蓝色的Downloa…

VIVADO的IP核 DDS快速采用——生成正弦波,线性调频波

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

03作业

03作业 一、关于static修饰符的问题适合用static修饰的方法:工具类方法(如Math类的abs()、StringUtils的isEmpty()) 工厂方法(用于创建对象的方法) 单例模式的getInstance()方法 与类本身相关而非实例相关的操作不…

软工作业个人项目

这个作业属于哪个课程 计科23级12班这个作业要求在哪里 [个人项目-作业](个人项目 - 作业 - 计科23级12班 - 班级博客 - 博客园)这个作业的目标 设计一个论文查重算法,给出一个原文文件和一个在这份原文上经过了增删改…

rapidxml中接口函数

引言 RapidXML 是一个轻量级 XML 解析库,核心接口围绕 文档解析、节点操作、属性操作 三大类展开。(基于 rapidxml.hpp 核心头文件) 一、文档操作(xml_document<> 类) xml_document<> 是 XML 文档的核心…

YOLO进阶提升 6模型训练与测试

进阶提升 6模型训练与测试 核心概念训练过程:通过迭代(epoch)不断优化损失函数,直至收敛。 Checkpoints(模型权重保存点):训练中定期保存模型参数,用于恢复或测试。 测试/推理(Inference):利用训练好的模型…

深入解析:C语言---判断语句

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

vue基于Springboot框架网上电子书店商城好书推荐管理系统 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

YOLO进阶提升 4训练准备与数据处理

进阶提升 4训练准备与数据处理 核心概念参数配置:训练前需指定数据路径和预训练模型权重。 迁移学习:利用已有的预训练模型作为初始化,提高收敛速度和效果。 数据加载(DataLoader/Generator):分批按需读取,避免…

YOLO进阶提升 5标注与配置

进阶提升 5标注与配置 核心概念数据标注 (Labeling):通过工具(如 LabelMe)对图像中的目标进行框选或分割,生成 JSON 格式的标注文件。 配置文件 (Config):定义模型结构、类别数、路径等关键信息,使训练过程与任…

【学术会议前沿信息|科研必备】IEEE/EI/Scopus三检护航!人工智能+自动化控制+人文社科+遥感+地理信息+视觉领域国际会议征稿启动,硕博生速来! - 教程

【学术会议前沿信息|科研必备】IEEE/EI/Scopus三检护航!人工智能+自动化控制+人文社科+遥感+地理信息+视觉领域国际会议征稿启动,硕博生速来! - 教程2025-09-20 11:43 tlnshuju 阅读(0) 评论(0) 收藏 举报pre {…

YOLO进阶提升 3YOLOv4 改进

进阶提升 YOLOv4 改进 核心概念YOLOv4:YOLO 系列的重要升级版本,目标是在保证高精度的同时,让普通 GPU 用户也能训练。 迁移学习:利用在大规模数据集上训练好的模型参数,作为新任务的初始化,提高小数据集上的表…

解码C语言位字段

一、位字段的定义 位字段允许在结构体中按 位(bit) 为单位分配成员空间,用于紧凑存储布尔标志或小范围整数值,节省内存。常用于硬件寄存器操作、协议数据解析等场景。 二、位字段的语法 1. 基本声明 struct 结构体…