案例-任务清单

news/2024/12/22 15:13:24/

文章目录

  • 效果展示
    • 初始化面
    • 演示画面
  • 代码区

效果展示

初始化面

在这里插入图片描述

演示画面

任务清单

代码区

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>任务清单</title><style>css">* {margin: 0px;padding: 0px;}body {width: 400px;margin: 0px auto;/*上下 左右*/}.total {display: flex;}.input {width: 300px;height: 50px;margin-top: 20px;}.createTask {height: 50px;color: white;background-color: orange;border-color: white;}.createTask:hover {background-color: grey;}.createTask:active {background-color: green;}h3 {width: 180px;color: white;background-color: black;text-align: center;margin-top: 5px;}.contain {margin-top: 2px;}</style>
</head><body><div><input class="input" type="text"><button class="createTask" onclick="creatAssign()">新建任务</button></div><div class="total"><div class="disready"><h3>未完成</h3><!-- <div class="contain"><input type="checkbox"><span>测试案例</span><button>删除</button></div> --></div><div class="ready"><h3>已完成</h3></div></div>
</body>
<script>javascript">function creatAssign() {// 找到祖父let disready = document.querySelector('.disready')let ready = document.querySelector('.ready')// 创建父节点let divParent = document.createElement('div')// 创建子节点let checkSon = document.createElement('input')let spanSon = document.createElement('span')let butSon = document.createElement('button')// 获取任务输入内容let inputTask = document.querySelector('.input')let inputMessage = inputTask.valueconsole.dir(inputTask)console.log(inputMessage)if (inputMessage == "") return// 赋值spanSon.innerHTML = inputMessagebutSon.innerHTML = "删除"// 插入父节点中去checkSon.type = "checkbox"divParent.appendChild(checkSon)divParent.appendChild(spanSon)divParent.appendChild(butSon)console.log(divParent)// cssdivParent.className = "contain"// 插入祖父结点disready.appendChild(divParent)// 遍历删除按键let buttonDeleteAll = document.querySelectorAll(".contain button")for (i = 0; i < buttonDeleteAll.length; ++i) {buttonDeleteAll[i].onclick = function () {let parentNode = this.parentNodelet grandNode = parentNode.parentNodegrandNode.removeChild(parentNode)}}// 遍历复选框let buttonSelectAll = document.querySelectorAll(".contain input")for (i = 0; i < buttonSelectAll.length; ++i) {buttonSelectAll[i].onclick = function () {let selectValue = this.checkedlet parentNode = this.parentNodeif (selectValue) {// true 插入完成列表ready.appendChild(parentNode)} else {// falsedisready.appendChild(parentNode)}}}}</script></html>

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

相关文章

Vue前端框架的基础配置

登录界面添加背景图 通过在登录界面的vue文件中&#xff0c;设置div标签的background-image属性&#xff0c;加载背景图 <style scoped> .myvue{width:100%;height: 750px; //添加背景图的地址background-image: url(../assets/oa.jpeg);background-size: cover;backgr…

OpenCVSharp使用DNN图像分类详解

文章目录 简介1. DNN 模块概述2. 环境准备3. 加载模型4. 预处理输入图像5. 进行推理6. 解析输出结果7. 处理不同框架的模型8. 完整示例代码总结简介 OpenCV 的 DNN(深度神经网络)模块提供了加载和运行深度学习模型的能力,使得图像分类变得更为简单。通过 OpenCVSharp,我们可…

Java项目:151 SSM的防盗门进销存管理系统(含论文+开题报告+说明文档)

作者主页&#xff1a;源码空间codegym 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 前言 本java的防盗门进销存系统主要完成对防盗门的管理&#xff0c; 包括库存管理、订单审核、采购管理、销售管理、账户管理、统计分析等几个方面。 …

循环神经网络(Recurrent Neural Network,RNN)

简介&#xff1a;个人学习分享&#xff0c;如有错误&#xff0c;欢迎批评指正。 一. 核心理念 循环神经网络&#xff08;Recurrent Neural Network&#xff0c;RNN&#xff09;是一类专门用于处理序列数据的神经网络架构。其独特之处在于能够处理输入序列中元素的时序关系&…

Android 未来可能支持 Linux 应用,Linux 终端可能登陆 Android 平台

近日&#xff0c;根据 android authority 的消息&#xff0c;Google 正在开发适用于 Android 的 Linux 终端应用&#xff0c;而终端应用可以通过开发人员选项启用&#xff0c;并将 Debian 安装在虚拟机中。 在几周前&#xff0c;Google 的工程师开始为 Android 开发新的 Termi…

数据处理方式,线程与进程,多任务,Spark与MR的区别

目录 数据处理的方式有哪些 单机数据处理 集群数据处理 分布式计算框架 MapReduce ApplicationMaster Spark分布式计算类别 进程与线程的区别 进程是计算时分配资源的最小单位 线程是执行计算任务的最小任务 多进程的执行效率没有多线程的执行效率高 多任务 Spark和M…

Redis中的Lua脚本是否是原子性操作?详解

1. Redis中的Lua脚本是原子性操作吗&#xff1f; 在回答这个问题之前&#xff0c;我们首先要明确&#xff0c;Lua脚本中所指的原子性与我们通常意义上的原子性不一样。 我们通常所说的原子性是数据库中事务四大特性ACID&#xff08;即原子性、一致性、隔离性、持久性&#xff0…

Linux高阶——0928—Github数据上传markdown语言

1、Github三要素 仓库、提交、分支 提交 绿色&#xff1a;新加 红色&#xff1a;删除 主分支master或main 项目的存储单位——仓库 实际代码的存储单位——分支 分支的协同开发 2、本地数据上传到云端的过程 3、markdown