当前位置: 首页 > article >正文

案例-任务清单

文章目录

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

效果展示

初始化面

在这里插入图片描述

演示画面

任务清单

代码区

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>任务清单</title>
    <style>
        * {
            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>
    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.value
        console.dir(inputTask)
        console.log(inputMessage)
        if (inputMessage == "") return
        // 赋值
        spanSon.innerHTML = inputMessage
        butSon.innerHTML = "删除"
        // 插入父节点中去
        checkSon.type = "checkbox"
        divParent.appendChild(checkSon)
        divParent.appendChild(spanSon)
        divParent.appendChild(butSon)
        console.log(divParent)
        // css
        divParent.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.parentNode
                let grandNode = parentNode.parentNode
                grandNode.removeChild(parentNode)
            }
        }
        // 遍历复选框
        let buttonSelectAll = document.querySelectorAll(".contain input")
        for (i = 0; i < buttonSelectAll.length; ++i) {
            buttonSelectAll[i].onclick = function () {
                let selectValue = this.checked
                let parentNode = this.parentNode
                if (selectValue) {
                    // true 插入完成列表
                    ready.appendChild(parentNode)
                } else {
                    // false
                    disready.appendChild(parentNode)
                }
            }
        }
    }


</script>

</html>

http://www.kler.cn/news/339777.html

相关文章:

  • PHP反射
  • LeetCode 48 Rotate Image 解题思路和python代码
  • Java第二阶段---12继承---第一节 继承
  • OpenAI 推出 Canvas 工具,助力用户与 ChatGPT 协作写作和编程
  • 和鲸科技创始人范向伟:拐点即将来临,AI产业当前的三个瓶颈
  • 十款超好用的图纸加密软件推荐!2024企业图纸加密最佳选择!
  • Python绘制--绘制心形曲线
  • 分布式事务讲解 - 2PC、3PC、TCC
  • C#来执行SolidWorks的VBA宏代码:来自粉丝的答疑贴
  • 解决Element-ui input 在搜狗输入法下,限制输入数字时先输入汉字后无法绑定的问题
  • 数据结构 ——— 单链表oj题:环状链表(求出环的入口节点)
  • Spring与Spring Boot之间的区别
  • HTML 什么是块级元素?
  • AI产品经理面试,背烂这100个问题就稳了
  • flatten-maven-plugin统一版本打包失败问题记录
  • 为确保阻塞缺陷的解决时间要求得到有效执行,可以采取以下措施:
  • 开放原子开源基金会网站上的开源项目EasyBaaS存在内存泄露缺陷
  • GPT-SOVIT模型部署指南
  • 【python实操】python小程序之封装(登录、小明)
  • linux中的火墙优化策略