(二)小案例银行家应用程序-创建DOM元素

news/2024/12/2 17:54:31/

在这里插入图片描述

● 上图的数据很明显是从我们账户数组中拿到了,我们刚刚学习了forEach,所以我们使用forEach来创建我们的DOM元素;

const displayMovements = function (movements) {movements.forEach((mov, i) => {const type = mov > 0 ? 'deposit' : 'withdrawal';const html = `<div class="movements__row"><div class="movements__type movements__type--${type}">${i + 1} ${type}</div><div class="movements__value">${mov}</div></div>`;});
};

● 现在我们写好了,但是我们需要将内容插入html中

const displayMovements = function (movements) {movements.forEach((mov, i) => {const type = mov > 0 ? 'deposit' : 'withdrawal';const html = `<div class="movements__row"><div class="movements__type movements__type--${type}">${i + 1} ${type}</div><div class="movements__value">${mov}</div></div>`;containerMovements.insertAdjacentHTML('afterbegin', html);});
};

insertAdjacentHTML(‘afterbegin’, html) 的含义是将指定的 HTML 字符串 html 插入到 containerMovements 元素的开头部分(即作为其第一个子元素),而不会替换原有的内容。
这个方法提供了四个相对位置的选项:
● ‘beforebegin’:在元素之前插入。
● ‘afterbegin’:在元素内部的开头部分插入。
● ‘beforeend’:在元素内部的结尾部分插入。
● ‘afterend’:在元素之后插入。

● 然后我们找一个将一个账户数据传入到函数中尝试一个会不会成功;

const displayMovements = function (movements) {movements.forEach((mov, i) => {const type = mov > 0 ? 'deposit' : 'withdrawal';const html = `<div class="movements__row"><div class="movements__type movements__type--${type}">${i + 1} ${type}</div><div class="movements__value">${mov}</div></div>`;containerMovements.insertAdjacentHTML('afterbegin', html);});
};displayMovements(account1.movements);

注:下面应用程序的隐藏是通过CSS中透明图实现的,我们实现要将其注释一下,从而查看我们的视图
在这里插入图片描述

● 现在再刷新一下页面查看一下
在这里插入图片描述

成功了!

● 但是我们发现HTML原先存在的数据仍然存在
在这里插入图片描述

● 所以我们要将他去除掉,再插入代码之前,将HTML块中数据清除
const displayMovements = function (movements) {containerMovements.innerHTML = '';  //清楚容器中的数据movements.forEach((mov, i) => {const type = mov > 0 ? 'deposit' : 'withdrawal';const html = `<div class="movements__row"><div class="movements__type movements__type--${type}">${i + 1} ${type}</div><div class="movements__value">${mov}</div></div>`;containerMovements.insertAdjacentHTML('afterbegin', html);});
};displayMovements(account1.movements);

在这里插入图片描述

这样原来存在的数据就没有了


http://www.ppmy.cn/news/1408937.html

相关文章

福州装修答疑 | 飘窗能不能砸掉?福州中宅装饰,福州装修

装修中的飘窗是一种常见的装饰元素&#xff0c;它不仅可以增加室内的采光和通风效果&#xff0c;还能为居室增添一份雅致和温馨。然而&#xff0c;很多业主在装修中都会遇到一个共同的问题&#xff1a;装修中的飘窗到底能不能砸&#xff1f;什么情况下可以砸&#xff1f;什么情…

【PostgreSQL】技术传承:使用Docker快速部署PostgreSQL数据库

前言 PostgreSQL的重要贡献者Simon Riggs因一起坠机事故不幸离世。Simon Riggs是英国著名的软件与服务领导者&#xff0c;也是PostgreSQL的主要开发者和贡献者。事故发生在英国当地时间3月26日13:41分&#xff0c;当时他驾驶的私人通用航空Cirrus SR22飞机在英国达克斯福德机场…

DOTS:Burst

目录 一&#xff1a;简介 1.1 Getting started 1.2 C# language support 1.2.1 HPC# overview 1.2.1.1 Exception expressions 1.2.1.2 Foreach and While 1.2.1.3 Unsupported C# features in HPC# 1.2.2 Static read-only fields and static constructor support 1.…

【QT+QGIS跨平台编译】056:【pdal_json_schema+Qt跨平台编译】(一套代码、一套框架,跨平台编译)

点击查看专栏目录 文章目录 一、pdal_json_schema介绍二、pdal下载三、文件分析四、pro文件五、编译实践一、pdal_json_schema介绍 pdal_json_schema 是与 PDAL(Point Data Abstraction Library)相关的 JSON 模式文件。PDAL 是一个用于处理和分析点云数据的开源库。JSON 模式…

【攻防世界】FlatScience

dirsearch 扫描发现四个文件 在login.php 中发现 输入 http://61.147.171.105:61912/login.php/?debug 发现源码 <?php if(isset($_POST[usr]) && isset($_POST[pw])){$user $_POST[usr];$pass $_POST[pw];$db new SQLite3(../fancy.db);$res $db->query(…

Elementplus 2.6.1表单校验模块开发体验改进

需求 之前的表单代码看了下&#xff0c;写的比较冗长&#xff0c;于是去万能的Github找点轮子&#xff0c;发现了这个&#xff1a; GitHub - aweiu/element-ui-verify: 如果你受够了饿了么ElementUI原生的校验方式&#xff0c;那就来试试它吧&#xff01;一款更懂你的校验插件…

2024年最新版FL Studio21.2.3 Build 4004 for Mac 版激活下载和图文激活教程

FL studio21中文别名水果编曲软件&#xff0c;是一款全能的音乐制作软件&#xff0c;包括编曲、录音、剪辑和混音等诸多功能&#xff0c;让你的电脑编程一个全能的录音室&#xff0c;它为您提供了一个集成的开发环境&#xff0c;使用起来非常简单有效&#xff0c;您的工作会变得…

Day:004(1) | Python爬虫:高效数据抓取的编程技术(数据解析)

数据解析-正则表达式 在前面我们已经搞定了怎样获取页面的内容&#xff0c;不过还差一步&#xff0c;这么多杂乱的代码夹杂文字我们怎样 把它提取出来整理呢&#xff1f;下面就开始介绍一个十分强大的工具&#xff0c;正则表达式&#xff01; 正则表达式是对字符串操作的一种…