首页 > 编程语言 >【Web应用技术基础】JavaScript(8)——案例:待办事项

【Web应用技术基础】JavaScript(8)——案例:待办事项

时间:2024-04-07 16:32:49浏览次数:30  
标签:Web button JavaScript height width 待办 var document row

视频已发。截图如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 实现页面样式 */
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        .container {
            width: 800px;
            margin: 0 auto;
            display:flex;
        }

        .todo,
        .done {
            width: 50%;
            height: 100%;
        }

        .container h3 {
            height: 50px;
            text-align: center;
            line-height: 50px;
            background-color: #333;
            color: #fff;

        }

        .nav {
            width: 800px;
            height: 100px;
            margin: 0 auto;
            display: flex;
            align-items: center;
        }
        .nav input {
            width: 600px;
            height: 50px;
        }
        .nav button {
            width: 200px;
            height: 50px;
            border: none;
            background-color: rgb(78, 203, 78);
            color: #fff;
        }

        .row {
            height: 50px;
            display: flex;
            align-items: center;

        }

        .row input{
            margin: 0 10px;
        
        }
        .row span {
            width: 300px;
        }
        .row button {
            width: 50px;
            height: 40px;
        }
    </style>
</head>
<body>
    <div class="nav">
        <input type="text">
        <button>新建按钮</button>
    </div>
    <div class="container">
        <div class="todo">
             <h3>未完成</h3>
            
        </div>
        <div class="done">
            <h3>已完成</h3>
        </div>
    </div>
</body>
<script>
// 实现页面行为

    //实现新增任务
    var addTaskBtn = document.querySelector('.nav button');
    addTaskBtn.onclick = function() {
        //1、获取到任务内容的输入框
        var input=document.querySelector('.nav input');
        //2、获取到输入框的内容
        var taskContent=input.value;
        //3、根据内容新建一个元素节点
        var row=document.createElement('div');
        row.className='row';
        var checkbox=document.createElement('input');
        checkbox.type='checkbox';
        var span = document.createElement('span');
        span.innerHTML=taskContent;
        var button = document.createElement('button');
        button.innerHTML='删除';
        row.appendChild(checkbox);
        row.appendChild(span);
        row.appendChild(button);
        //4、把新节点插入到todo中
        var todo = document.querySelector('.todo');
        todo.appendChild(row);
        //点击复选框后将元素放到“已完成”
        //5、给checkbox注册点击事件
        checkbox.onclick = function() {
            var row=this.parentNode;
            if(this.checked){
                var target = document.querySelector('.done');
            }else{
                var target = document.querySelector('.todo');
            }
            target.appendChild(row);
        }
        //点击删除按钮删除该任务
        //6、给删除按钮注册点击事件
        button.onclick = function(){
            var row=this.parentNode;
            var grandParent=row.parentNode;
            grandParent.removeChild(row);
        }
    }
</script>
</html>

标签:Web,button,JavaScript,height,width,待办,var,document,row
From: https://blog.csdn.net/m0_74164458/article/details/137377519

相关文章

  • vue websocket电脑端前端集成
    后端数据用websocket推送数据,前端在大屏左上角模块页面接收,用bus发送到其他模块(总共6个模块页面,从左上模块页面发送到其他5个模块页面)页面,数据用于大屏上显示,废话不多说,直接上代码。eventBus.js文件,放到根目录src->assets->js文件夹下,eventBus.js文件内容如下:importVuefr......
  • 密码管理工具KeeWeb使用
    好处统一管理密码自动填充 浏览器google或opera,我使用的opera客户端分为桌面端和web,推荐使用webhttps://app.keeweb.info安装设置汉化选择最后一个使用插件安装,安装中文语言包插件浏览器集成   建立链接后续则可以自动填入密码 ......
  • Unity WebGL火狐浏览器配置
    特此声明:此配置容易内存溢出,只适合小型Webgl运行,推荐使用本地服务器打开WebGL火狐浏览器下载地址:https://www.firefox.com.cn/1.打开火狐浏览器输入:about:config2.将这几项,设置对应属性ebgl.force-enabledtruewebgl.disabled......
  • 【Web】纯萌新的CISCN刷题记录(1)
    目录[CISCN2019华东南]Web11[CISCN2019华北Day2]Web1[CISCN2019初赛]LoveMath[CISCN2022初赛]ezpop[CISCN2019华东南]DoubleSecret[CISCN2023华北]ez_date[CISCN2019华北Day1]Web1[CISCN2019华东南]Web4[CISCN2019华北Day1]Web2 [CISCN2023西南]do_y......
  • JavaScript中,...(三个点)是扩展运算符
    在JavaScript中,...(三个点)是扩展运算符(SpreadOperator)和剩余参数(RestParameters)的语法。它确实可以用来“展开”对象的属性或数组的元素。展开对象的属性对于对象,扩展运算符可以用来将一个对象的所有可枚举属性复制到新对象中,或者与现有的对象属性合并。javascript复制代码......
  • 十分钟学会WebSocket
    一、WebSocket简介WebSocket是一种在客户端和服务器之间实现双向通信的网络协议。它通过在单个TCP连接上提供全双工通信功能,使得服务器可以主动向客户端推送数据,而不需要客户端发起请求。 二、WebSocket的工作原理1.WebSocket的握手过程和HTTP有所不同。客户端通过发送特定......
  • websocket实践
    文章目录背景WebSocketAPI使用场景优点实例步骤1:设置WebSocket服务器步骤2:创建客户端HTML页面步骤3:测试WebSocket通信注意事项实际操作参考资料WebSocket是一种在单个TCP连接上进行全双工通信的协议。它使得浏览器和服务器只需建立一个连接,就可......
  • JetBrains WebStorm 2024.1 (macOS, Linux, Windows) - 最智能的 JavaScript IDE
    JetBrainsWebStorm2024.1(macOS,Linux,Windows)-最智能的JavaScriptIDE请访问原文链接:JetBrainsWebStorm2024.1(macOS,Linux,Windows)-最智能的JavaScriptIDE,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgJetBrainsWebStorm-最智能的JavaScri......
  • 【Web爬虫】爬⾍⿊⻰江省与四川省农机补贴以及数据分析
    目录一、实验目的二、实验内容2.1实验爬取数据选择2.2python代码爬取数据2.3数据处理与分析三、实验原理3.1python 连接网页的两种方式3.1.1使用requests连接网页3.1.2使用fromseleniumimportwebdriver连接网页,创建网页测试3.2python 获取网页内容的两种方......
  • 2.手写JavaScript广度和深度优先遍历二叉树
    一、核心思想:1.深度遍历:依靠栈先进后出的机制,分别设置返回结果的数组和栈数组,首先判断栈非空,对每个结点,将其出栈并把值push到结果数组,判断是否有右左孩子,分别将其加入栈中,循环执行上述操作。否则返回结果数组。2.广度遍历:依靠队列先进先出的机制,分别设置返回结果的数组和队......