深圳市金黑网络技术有限公司始终坚持以用户需求为导向,提供安全、稳定、高效的产品和服务!
签到 · 搜索导航 · 服务热线 · 微信/手机:17817817816

深圳网站建设

查看: 668|回复: 0

待办事项安排办公任务(HTML+CSS+JavaScript实现)源码下载

[复制链接]

UID
3
贡献
54
金币
10
主题
16
在线时间
4 小时
注册时间
2022-9-27
最后登录
2023-4-11
发表于 2023-4-8 11:16:57 | 668 | 0 | 显示全部楼层 |阅读模式
待办事项安排办公任务(HTML+CSS+JavaScript实现)源码下载

待办事宜源码下载.jpg

  • 重新点击已勾选的复选框,事项回到未完成列表
  • 可以随时删除项目
代码如下:
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7.     <title>代办事项</title>
  8. </head>
  9. <body>
  10.     <style>
  11.         * {
  12.             padding: 0;
  13.             margin: 0;
  14.             box-sizing: border-box;
  15.         }

  16.         .nav {
  17.             width: 600px;
  18.             margin: 0 auto;
  19.             display: flex;
  20.             justify-content: center;
  21.             align-items: center;
  22.         }

  23.         .nav input {
  24.             width: 450px;
  25.             height: 50px;
  26.             font-size: 25px;
  27.             padding-left: 10px;
  28.         }

  29.         .nav button {
  30.             width: 150px;
  31.             height: 50px;
  32.             border: none;
  33.             color: white;
  34.             background-color: orange;
  35.             font-size: 18px;
  36.         }

  37.         .nav button:active {
  38.             background-color: grey;
  39.         }

  40.         .container {
  41.             width: 600px;
  42.             margin: 0 auto;
  43.             display: flex;
  44.             justify-content: center;
  45.             padding-top: 10px;
  46.         }

  47.         .container .left,
  48.         .container .right {
  49.             width: 50%;
  50.         }

  51.         .container .left h3,
  52.         .container .right h3 {
  53.             text-align: center;
  54.             height: 50px;
  55.             line-height: 50px;
  56.             background-color: black;
  57.             color: white;
  58.         }

  59.         .container .row {
  60.             height: 50px;
  61.             display: flex;
  62.             align-items: center;
  63.             justify-content: flex-start;
  64.         }

  65.         .container .row span {
  66.             width: 240px;
  67.         }

  68.         .container .row button {
  69.             width: 40px;
  70.             height: 30px;
  71.         }
  72.     </style>

  73.     <!-- 表示上方的 div,里面方输入框和按钮 -->
  74.     <div class="nav">
  75.         <input type="text">
  76.         <button>新建任务</button>
  77.     </div>
  78.     <!-- 下方的 div,里面分成左右两栏 -->
  79.     <div class="container">
  80.         <div class="left">
  81.             <h3>未完成</h3>
  82.         </div>
  83.         <div class="right">
  84.             <h3>已完成</h3>
  85.         </div>
  86.     </div>

  87.     <script>
  88.         let addTaskBtn = document.querySelector('.nav button');
  89.         addTaskBtn.onclick = function() {
  90.             // 1. 获取输入到的内容
  91.             let input = document.querySelector('.nav input');
  92.             let taskContent = input.value;
  93.             // 2. 创建一个 div.row, 里面设置上面需要的 复选框, 文本, 删除按钮
  94.             let row = document.createElement('div');
  95.             row.className = 'row';
  96.             let checkBox = document.createElement('input');
  97.             checkBox.type = 'checkbox';
  98.             let span = document.createElement('span');
  99.             span.innerHTML = taskContent;
  100.             let deleteBtn = document.createElement('button');
  101.             deleteBtn.innerHTML = '删除';
  102.             row.appendChild(checkBox);
  103.             row.appendChild(span);
  104.             row.appendChild(deleteBtn);
  105.             // 3. 把 div.row 添加到 .left 中
  106.             let left = document.querySelector('.left');
  107.             left.appendChild(row);


  108.             // 4. 给 checkBox 增加一个点击处理函数,点击之后就能直接移动任务
  109.             checkBox.onclick = function() {
  110.                 // 当用户点击的时候,就获取到当前的这个row元素
  111.                 // 把这 row 给添加到另外一侧
  112.                 if (checkBox.checked) {
  113.                     // 已选中状态
  114.                     target = document.querySelector('.right');
  115.                 } else {
  116.                     target = document.querySelector('.left');
  117.                 }
  118.                 target.appendChild(row);
  119.             }

  120.             // 5. 实现删除效果
  121.             deleteBtn.onclick = function() {
  122.                 // 要想删除 row, 就需要知道 row 的父元素
  123.                 let parent = row.parentNode;
  124.                 parent.removeChild(row);
  125.             }

  126.             // 6. 删除输入框的内容
  127.             input.value = '';
  128.         }
  129.     </script>
  130. </body>
  131. </html>
复制代码

楼主热帖

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

快速回复 返回顶部 返回列表