从零开始学习 JS APL(四):完整指南和实例解析

目录

  • 学习目标:
  • 学习内容:
  • 学习时间:
  • 学习内容:
  • 时间戳:
  • DOM 节点:
  • 插件: 
  • 综合案例 :

学习目标:

1. 理解节点(标签)的增删改查
2. 具备编写增加学生信息表案例的能力

 


学习内容:

  • 日期对象
  • 节点操作
  • M端事件
  • JS插件
  • 综合案例

学习时间:

  • 周一至周五晚上 7 点—晚上9点
  • 周六上午 9 点-上午 11 点
  • 周日下午 3 点-下午 6 点

学习内容:

日期对象:

目标:掌握日期对象,可以让网页显示日期

  •           日期对象:用来表示时间的对象
  •           作用:可以得到当前系统时间
     

目标:能够实例化日期对象
l 在代码中发现了 new 关键字时,一般将这个操作称为实例化
l 创建一个时间对象并获取时间
        Ø 获得当前时间


        Ø 获得指定时间
 

日期对象的方法 :

方法作用说明

getFullYear() 

获得年份获取四位年份

getMonth()

获得月份 取值为 0 ~ 11

getDate()

获取月份中的每一天不同月份取值也不相同

getDay()

获取星期取值为 0 ~ 6

getHours()

获取小时取值为 0 ~ 23

getMinutes()

获取分钟取值为 0 ~ 59

getSeconds()

获取秒取值为 0 ~ 59

页面显示时间:
需求:将当前时间以:YYYY-MM-DD HH:mm 形式显示在页面 2008-08-08 08:08
案例
分析:
①:调用日期对象方法进行转换
②:记得数字要补0
③:字符串拼接后,通过 innerText 给 标签
 

时间戳:

目标:能够获得当前时间戳
l 使用场景: 如果计算倒计时效果,前面方法无法直接计算,需要借助于时间戳完成
l 什么是时间戳:
        Ø 是指1970年01月01日00时00分00秒起至现在的
毫秒数,它是一种特殊的计量时间的方式
l 算法:
Ø 将来的时间戳 - 现在的时间戳 = 剩余时间毫秒数
Ø 剩余时间毫秒数 转换为 剩余时间的 年月日时分秒 就是 倒计时时间
Ø 比如 将来时间戳 2000ms - 现在时间戳 1000ms = 1000ms
Ø 1000ms 转换为就是 0小时0分1秒

 

  1. Date对象的getTime()方法:使用new Date()获取当前时间,调用getTime()方法将返回当前时间的时间戳。
const timestamp = new Date().getTime();
console.log(timestamp);

  1. Date对象的valueOf()方法:valueOf()方法返回距离1970年1月1日00:00:00 UTC之间的毫秒数。
const timestamp = new Date().valueOf();
console.log(timestamp);

  1. 使用+符号将Date对象转换为时间戳:将Date对象强制转换为数字即可获得时间戳。
const timestamp = +new Date();
console.log(timestamp);

案例:(京东倒计时)

分析:
①:用将来时间减去现在时间就是剩余的时间
②:核心: 使用将来的时间戳减去现在的时间戳
③:把剩余的时间转换为 天 时 分 秒


注意:
1. 通过时间戳得到是毫秒,需要转换为秒在计算
2. 转换公式:
        Ø d = parseInt(总秒数/ 60/60 /24); // 计算天数
        Ø h = parseInt(总秒数/ 60/60 %24) // 计算小时
        Ø m = parseInt(总秒数 /60 %60 ); // 计算分数
        Ø s = parseInt(总秒数%60); // 计算当前秒数

 

DOM 节点:


 目标:能说出DOM节点的类型
l DOM节点
        Ø DOM树里每一个内容都称之为节点
l 节点类型
        Ø 元素节点
                l 所有的标签 比如 body、 div
                l html 是根节点

        Ø 属性节点
                l 所有的属性 比如 href
        Ø 文本节点
                l 所有的文本
        Ø 其他

父节点查找:
        Ø parentNode 属性
        Ø 返回最近一级的父节点 找不到返回为null
 

子节点查找:
        Ø childNodes
ü 获得所有子节点、包括文本节点(空格、换行)、注释节点等
Ø children 属性 (重点)
        ü 仅获得所有元素节点
        ü 返回的还是一个伪数组
         

兄弟关系查找:
1. 下一个兄弟节点
        Ø nextElementSibling 属性
2. 上一个兄弟节点
        Ø previousElementSibling 属性
 

你可以通过JavaScript向HTML文档中添加新的节点。有几种方法可以实现这一点,以下是其中两种:

  1. 使用appendChild()方法向已有的元素添加子节点
// 选择父元素
const parent = document.querySelector(".parent");
// 创建一个新元素
const newElement = document.createElement("div");
// 添加内容
newElement.innerHTML = "新的div元素";
// 添加元素作为父元素的子节点
parent.appendChild(newElement);

  1. 使用insertAdjacentHTML()方法将HTML字符串插入到指定元素中
// 选择要插入的元素
const targetElement = document.querySelector(".target");
// 插入HTML字符串
targetElement.insertAdjacentHTML("beforeend", "<div>新的div元素</div>");

上面两种方法都可以用来增加新的节点,第一种方法会先创建一个新的元素,然后将其添加为已有元素的子节点。第二种方法则是将一个HTML字符串插入到指定的元素中。

在JavaScript中,可以使用以下方法删除已有的节点:

  1. 使用removeChild()方法删除节点
// 选择要删除的节点
const nodeToDelete = document.querySelector(".to-delete");
// 选择该节点的父元素
const parent = nodeToDelete.parentNode;
// 删除该节点
parent.removeChild(nodeToDelete);

  1. 使用remove()方法删除节点
// 选择要删除的节点
const nodeToDelete = document.querySelector(".to-delete");
// 删除该节点
nodeToDelete.remove();

以上两种方法都可以用来删除已有的节点,第一种方法需要先选择该节点的父元素,然后调用removeChild()方法。第二种方法可以直接调用被删除节点的remove()方法来删除节点。

M端事件:
 目标:了解M端常见的事件
移动端也有自己独特的地方。比如触屏事件 touch(也称触摸事件),Android 和 IOS 都有。
l 触屏事件 touch(也称触摸事件),Android 和 IOS 都有。
l touch 对象代表一个触摸点。触摸点可能是一根手指,也可能是一根触摸笔。触屏事件可响应用户手指(或触控笔
)对屏幕或者触控板操作。

插件: 

l 插件: 就是别人写好的一些代码,我们只需要复制对应的代码,就可以直接实现对应的效果
l 学习插件的基本过程
Ø 熟悉官网,了解这个插件可以完成什么需求 https://www.swiper.com.cn/
Ø 看在线演示,找到符合自己需求的https://www.swiper.com.cn/demo/index.html
Ø 查看基本使用流程https://www.swiper.com.cn/usage/index.html
Ø 查看APi文档,去配置自己的插件 https://www.swiper.com.cn/api/index.html

 

综合案例 :

轮播图

以上就是第JS APL第四部分的知识点以及案例总结(喜欢的点个赞呗 可以私信我要素材!!!) 


 

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

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

相关文章

电脑CentOS 7.6与Windows系统对比:使用方式、优缺点概述

在多操作系统环境中&#xff0c;CentOS 7.6和Windows系统各自独占鳌头&#xff0c;它们在功能、稳定性、兼容性以及安全性等方面都有着各自的优点。这篇文章将对比分析这两个操作系统&#xff0c;以便用户能更好地了解它们的特点和使用方式。 一、使用方式 CentOS 7.6 CentO…

数据结构中处理散列冲突的四种方法

1 开放定址法 1.1 定义 开放定址法就是一旦发生了冲突&#xff0c;就去寻找下一个空的散列地址 1.2 要求 只要散列表足够大 空的散列地址总能找到&#xff0c;并将记录存入 1.3 线性探测法 使用该公式用于解决冲突的开放定址法称为线性探测法 对于线性探测法&#xff0c…

Linux下安装MySQL 5.6

1、下载二进制安装文件 使用wget下载MySQL 5.6.35二进制安装文件并存放在/root目录下。 wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz ll mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz 2、创建mysql用户 先创建mysql…

跨语种「AI同传」颠覆语音翻译!Meta谷歌连发重大突破

Meta谷歌接连放出重磅成果&#xff01;Meta开源无缝交流语音翻译模型&#xff0c;谷歌放出无监督语音翻译重大突破Translation 3。 就在Meta AI成立10周年之际&#xff0c;研究团队重磅开源了在语音翻译领域的突破性进展——「无缝交流」&#xff08;Seamless Communication&a…

http面试题,三次握手四次挥手

在浏览器中输入网址按下回车经历了一个怎样的过程&#xff1f; 总的来说分为以下几个过程&#xff1a; 1、DNS解析&#xff1a;将域名解析为IP地址; 2、TCP连接&#xff1a;TCP三次握手; 3、发生HTTP请求; 4、服务器处理请求并返回HTTP报文; 5、浏览器解析渲染页面; 6、断开连接…

二叉树的基本概念(详解)

树的定义 树是一种非线性数据结构&#xff0c;由n&#xff08;n>1&#xff09;个节点以及n-1条边组成&#xff0c;其中有且仅有一个节点作为根节点。树的定义具有以下特点&#xff1a; 每个节点具有零个或多个子节点。除了根节点外&#xff0c;每个节点有且仅有一个父节点…

【江科大--32课程中讲解到的外部设备】

一、传感器模块&#xff08;GPIO模块&#xff09; 1.基本介绍 传感器模块&#xff1a;传感器元件&#xff08;光敏电阻/热敏电阻/红外接收管等&#xff09;的电阻会随外界模拟量的变化而变化&#xff0c;通过与定值电阻分压即可得到模拟电压输出&#xff0c;再通过电压比较器进…

资料分析(花生)

基期A&#xff08;给出BR或BX&#xff09; 前期&#xff1a;代入、直除、假设分配隔年前期&#xff1a;求出间隔增长率&#xff0c;再变成第一类考法前期差值&#xff1a;假设分配法求得两个前期作差。 现期B 有增量求现期&#xff1a;求出 X&#xff0c;列不等式即可有增速求现…

子集(回溯、图解)

78. 子集 - 力扣&#xff08;LeetCode&#xff09; 题目描述 给你一个整数数组 nums &#xff0c;数组中的元素 互不相同 。返回该数组所有可能的子集&#xff08;幂集&#xff09;。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 样例输入 示例 1&#xff1a;…

【人体解剖学与组织胚胎学】练习一高度相联知识点整理及对应习题

文章目录 [toc]骨性鼻旁窦填空题问答题 关节填空题简答题 胸廓填空题简答题![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/827e7d1db3af42858d8734bb81911fea.jpeg)补充 骨性鼻旁窦 填空题 问答题 关节 填空题 简答题 胸廓 填空题 简答题 补充 第二肋对应胸骨…

Day02 Liunx高级程序设计2-文件IO

系统调用 概念 是操作系统提供给用户使其可以操作内核提供服务的一组函数接口 用户态和内核态 其中 ring 0 权限最高&#xff0c;可以使用所有 CPU 指令&#xff0c; ring 3 权限最低&#xff0c;仅能使用 常规 CPU 指令&#xff0c;这个级别的权限不能使用访问硬件资…

外贸平台辅助工具常见代码有哪些?

在当今的数字化时代&#xff0c;外贸平台已成为企业开展国际贸易的重要渠道之一&#xff0c;为了提高外贸平台的运营效率和客户满意度&#xff0c;企业需要借助各种外贸平台辅助工具&#xff0c;这些工具可以帮助企业自动化、智能化地完成各种外贸业务流程&#xff0c;如产品发…

sql 读写注入

root高权限读写注入 load_file 读取文件 大姐我真是整了半天都是nullnullnull缝子 结果看了半天这个my.ini是被隐藏的大哥 load_file()读取文件结果为null_mysql load_file返回null解决办法_黑小薛的博客-CSDN博客 终于读出来了 此时参数值系统变量 secure_file_priv已经被修…

【Transformer论文精读系列】(一)如何理解Transformer里的注意力机制?

论文&#xff1a;Attention Is All You Need 参考李沐老师的讲解视频&#xff1a; Transformer论文逐段精读【论文精读】_哔哩哔哩_bilibili 其他参考&#xff1a; 超强动画&#xff0c;一步一步深入浅出解释Transformer原理&#xff01;_哔哩哔哩_bilibili Transformer论文逐段…

Unity 网格布局控件-Grid Layout Group

Unity 网格布局控件-Grid Layout Group是Unity中的UGUI控件&#xff0c;用于在 UI 中创建网格布局&#xff0c; 它的作用是&#xff1a;自动将子对象排列成网格&#xff0c;即我们可以通过该组件对子对象按行和列的形式排列&#xff0c;根据指定的约束条件自动调整它们的大小和…

java:封装统一的响应体code、data、msg、paging

背景 我们在写接口的时候一般不会直接返回给前端数据&#xff0c;而是会有响应体&#xff0c;比如 code、data、msg&#xff0c;这样就有一个统一的结构方便前端处理&#xff0c;那么今天就来封装一个统一的响应体 封装基本响应体 1、在 config 包里新建 ApiResponse.java …

大学如何自学嵌入式开发?

今日话题&#xff0c;大学如何自学嵌入式开发&#xff1f;了解大学生如何自学嵌入式开发是一项重要的任务。可以大概给个学习路线&#xff0c;从学习C语言开始&#xff0c;这是嵌入式编程的基础&#xff0c;掌握51单片机&#xff0c;学习基础电路知识&#xff0c;这对于理解硬件…

rancher harvester deploy demo 【部署 harvester v1.2.1】

简介 Harvester 是一个现代的、开放的、可互操作的、基于Kubernetes的超融合基础设施(HCI)解决方案。它是一种开源替代方案&#xff0c;专为寻求云原生HCI解决方案的运营商而设计。Harvester运行在裸机服务器上&#xff0c;提供集成的虚拟化和分布式存储功能。除了传统的虚拟机…

Jmeter 接口-加密信息发送(一百九十九)

方式1&#xff1a;使用函数助手 比如MD5加密方式&#xff1a; 如图&#xff0c;需要对${user}进行MD5加密 1、打开函数助手&#xff0c;找到MD5&#xff0c;输入需要加密的值 2、将${__MD5(${user},)}放到请求中 3、查看请求&#xff0c;请求成功 方式2&#xff1a;导入jar包…

执法记录仪、一体化布控球等目前支持的AI智能算法、视频智能分析算法有哪些

一、前端设备实现AI算法 主要是基于安卓的布控球实现&#xff0c;已有的算法包括&#xff1a; 1&#xff09;人脸&#xff1b;2&#xff09;车牌&#xff1b;3&#xff09;是否佩戴安全帽&#xff1b;4&#xff09;是否穿着工装&#xff1b; 可以支持定制开发 烟雾&#xf…