一个简单的todolist,记录我的前端第一步

超频玩家必看:TestMem5配置文件详解与内存稳定性测试实战(含黄金参数包) 本文详细解析了TestMem5(TM5)在内存超频稳定性测试中的核心价值与实战应用,特别针对DRAM颗粒特性提供黄金参数配置。通过anta777等专业配置的深度剖析,指导超频玩家精准定位内存故障,优化时序参数,实现性能与稳定性的完美平衡。涵盖从初级验证到极限压测的全流程方案,是硬件发烧友提升系统稳定性的必备指南。 阅读详情

啦啦啦

效果如下地址:

点击打开链接

body {
    line-height: 1;
    font-family: "Lato", sans-serif;
    background-color: #EFF1F2;
}
.todo{
    width: 70%;
    margin: 1em auto 3em;
    border: 1px solid #efefef;
    background-color:aquamarine;

}
.thing-input {
    border: 1px solid #dedede;
    padding-left: 10px;
    width: 70%;
    height: 35px;
    color: #555;
}
.clearList{
    color: #555;
    background-color:darkkhaki;
    width: 100px;
    height: 38px;
    cursor: pointer;
    font-size: 14px;
}

.listul ul li input,ul, li {
	margin: 0;
	padding: 0;
	border: 0;
}
.list li{
    border: 1px solid #dedede;
    width: 70%;
    height: 35px;
    color: #555;
    font-size: 30px;
    background-color:salmon; 
    list-style:none
}
.list li button{
        background-color: transparent;
	border: 1px solid #3465A4;
	color: #ddd;
	visibility: hidden;
	font-size: 20px;
	font-weight: bold;
}

.list li:hover > button {
	visibility: visible;
}
.list li label {
	display: inline-block;
	width: 70%;
	font-size: 20px;
	line-height: 24px;
	color: #fcfcfc;
	z-index: 2;
	overflow: hidden;
}


<html>
<body onload="initList();">
<div class="todo">
            <input type="text" placeholder="在此输入你将要做的事情按回车键结束" id="thing" class="thing-input" onkeypress="getKey();">
            <input type="button" value="清除列表" class="clearList" onclick="delectAll();">
            <br>
            <br>
            <br>
            
            
            <section class="list">
                <input type="checkbox" id="selectall" onclick="select_cancelAll();">选择全部
     <ul class="list-item" id="listul">
     
                </ul>
            </section>
            
        </div>
  </body>
</html>
function Todo(thing,time){
    this.thing=thing;
    this.time=time;
}
var todo1=new Todo("给老婆打电话","9:00");
var todo2=new Todo("下班去市场买菜","12:00");
var todo3=new Todo("上班","14:00");
var mylist=[todo1,todo2,todo3];
console.log(todo1);
//添加事件,参数用于添加在label标签
function add(labelText){
     //添加li标签
     var para=document.createElement("li");
       var element=document.getElementById("listul");
       element.appendChild(para);
       
       //往新的li标签添加复选框
       var inp=document.createElement("input");
       inp.type="checkbox";
       inp.onclick = isAll;
       
       element.lastChild.appendChild(inp);
       
       //往新的li标签添加label
       var lb=document.createElement("label");
       lb.appendChild(document.createTextNode(labelText));
       element.lastChild.appendChild(lb);
       
       //往新的li标签添加删除按钮
       var butt=document.createElement("button");
       butt.appendChild(document.createTextNode("删除"));
        element.lastChild.appendChild(butt);
       butt.onclick=function(){
          butt.parentNode.parentNode.removeChild(butt.parentNode);
       };
}
//初始化todolist
function initList(){
    console.log(mylist.length);
    for(var i=0;i<mylist.length;i++){
       add(mylist[i].time+mylist[i].thing);
   }
    
}

//添加
function addListDo(){
    var labelText=document.getElementById("thing").value;
 
    if(labelText==""||labelText==null)return;
    else{
        //调用添加函数
     add(labelText);
       //将输入框重置
    document.getElementById("thing").value="";
    }
    
    }
    
    function getKey()  
{ 
    if(event.keyCode===13){  
    addListDo();
    }     
}  

//删除全部
function delectAll(){
    var listul=document.getElementById("listul");
    listul.innerHTML="";
}

//选择全部的复选框onclick响应事件
function select_cancelAll(){
     var sel=document.getElementById("selectall");
     
     if(sel.checked){
          var item=document.getElementById("listul");
          var items=item.getElementsByTagName("input");
         for(var i=0;i<items.length;i++){
             items[i].checked=true;
         }
     }
     else{
          var item=document.getElementById("listul");
          var items=item.getElementsByTagName("input");
         for(var i=0;i<items.length;i++){
             items[i].checked=false;
     }
 }
}

//是否全部被选中
function isAll(){
  var sel=document.getElementById("selectall");
    if(this.checked==false){
      sel.checked = false;
      return;
    }
  else{
var item=document.getElementById("listul");         
var items=item.getElementsByTagName("input");
          
    for(var i=0;i<items.length;i++){
           if(items[i].checked==false){
             return;
           }
      }
    sel.checked = true;
  }
}


单片机按键识别篇---单击---双击----长按   最近做一任务需要使用一个按键实现三种功能,分别是按键单击功能,按键双击功能和按键长按功能,可能之前没有接触过这类按键复用情况,顶多也只是简单识别单击和长按,没有想过双击以上按键功能,也是绞尽脑汁,想了半天,又上网看了些例程,算是对于按键的识别有点小小的了解,感觉这个功能挺实用,在此做个随笔。 一、思路   1.识别长按操作思路:我们使用系统定时器定时,然后让系统每过一段时间去扫描按键I/O... 阅读详情

相关推荐

《商用密码应用与安全性评估》第四章密码应用安全性评估实施要点4.1密码应用方案设计

密码应用方案设计

qq_40442137的博客 1470

利用原生js实现TodoList----最简单的待办事项列表(附详细注释)

利用js实现TodoList 1.todoList.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> &lt

nqq0921的博客 8052

从想法到零件:手把手拆解一个汽车功能如何从PRD写到SSTS和CTS

本文详细拆解了汽车电子需求从市场文档(MRD)到零部件技术规范(CTS)的完整流程,以雨天自动关窗功能为例,展示了PRD、SSTS和CTS的编写要点与交互设计。文章重点解析了系统分解的艺术和零部件落地的精确参数要求,为汽车电子工程师提供了从概念到实现的全流程实践指南。

weixin_30300225的博客 480

js实现todolist总结

首先在网页布局设置好的情况下,进行js文件的编写,要求实现增加,删除,和实时变化,其实这都可以在存在浏览器的本地存储中。下面先列出我的html页面及css文件内容 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>表</title> ...

Hello,this is cirzear 3688

Python自动化测试报告:飞书群机器人消息卡片实战

本文详细介绍了如何利用Python和飞书群机器人实现自动化测试报告的智能通知。通过构建可定制的消息卡片,将测试结果(如通过数、失败数)以清晰、美观的格式自动推送至团队群聊,并支持一键跳转查看详细报告,从而显著提升团队协作与问题响应效率。

k6l7m8n9的博客 811

Windows 11登录界面密码框消失Bug解析与解决方案

Windows操作系统登录认证机制是系统安全的第一道防线,其图形界面由桌面窗口管理器(DWM)负责渲染。当UI元素渲染异常时,会导致密码输入框等关键组件不可见。这类图形子系统故障通常源于驱动兼容性或主题服务冲突,在Windows 11最新累积更新后尤为常见。通过系统文件检查(sfc)、注册表修复或创建新用户等工程实践方法可有效解决问题。对于企业IT环境,建议采用PIN码或生物识别等替代认证方案,同时定期执行磁盘清理和系统健康检查等Windows维护操作,确保认证服务稳定运行。

weixin_33806859的博客 609

js实现简单功能的todolist

简单功能的todolist <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title&...

tianlei11的博客 1007

广义平均(Generalized Mean, GeM)

本位介绍了广义平均操作的定义和简要推导,帮助大家理解其含义。

qq_45802280的博客 4547

利用JS实现简单的todoList(记事本)效果

目录 1.实现效果展示 2.HTML代码 3.CSS代码 4.Javascript代码 该记事本程序利用HTML+CSS+JavaScript前端三大框架来实现。 实现了记事本的添加,已完成和删除待办事项的基本功能。 下面是程序实现的全部代码: 1.实现效果展示 2.HTML代码 <head> <meta charset="UTF-8"> <title>TodoList</title> //导入css文件 <l

peri_zxy的博客 3142

VNC Viewer建立多个图形界面,来远程访问同一个服务器(Ubuntu)

如题。目前已经有了一个VNC viewer连接,那么如果再开一个图形界面呢? 思路主要是:新建一个用户,从这个用户新建一个vnc连接,然后访问图形界面。

the Blog of 等不到天亮丶等时光 5899

MySQL安装配置教程(超级详细)

一、 下载MySQL Mysql官网下载地址:MySQL :: Download MySQL Installer (Archived Versions) 1. 选择要安装的版本,本篇文章选择的是5.7.31版本,点击Download下载 正在上传…重新上传取消 二、 安装MySQL 1. 选择设置类型双击运行mysql-installer-community-5.7.31.0.msi 这里选择是自定义安装,所以直接选择“Custom”,点击“Next” “Developer Default”是

m0_67322837的博客 5万+

【angular】TodoList小项目(已开源)

功能:todo打勾(点击事件),它就加到doingList中。doing到done、done到todo以此类推。在每个会修改todoList、doingList、doneList的代码下面加上对应的。刷新一下,发现页面中的数据都没了。如果想要保存页面数据,我们需要做以下操作。到这里我们已经知道组件怎么创建和引用了。创建了组件后,要把它在根组件配置(定义数据,写addTodo方法。接下来开始写TodoList!把组件引入到总页面中(,把数据存放在本地中。

karshey的博客 1725

如何对TBSS的结果进行统计学的分析,已完成置换检验,如何在最终的TBSS输出结果提取除具体值及如何做进一步相关性分析??

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 1439

ToDoList——记录每天要做事情的一个APP

ToDoList 发现自己有点拖延症,就写了个APP,记录每天要做的事情。 一、Gif试一试 二、界面一览 三、炫技了 整个程序没有使用任何第三方开源库,虽说不要重复造轮子,可也得是我自己研究透彻的啊。 程序中写了4个自定义View,CalendarView是日历,GraphView是图表,ClockView是时钟,还有WheelView是滚轮,时间选择控件。 之后会把几个自定义Vie...

阿乐的专栏 1万+

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

前端·todolist-jQuery写法

用jQuery写一个todolist,包含完成,删除,更新三部分

likeyi_lky的博客 926

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

Angular实现简单的toDoList以及数据持久化存储

整理面试题,不是让大家去只刷面试题,而是熟悉目前实际面试中常见的考察方式和知识点,做到心中有数,也可以用来自查及完善知识体系。《前端基础面试题》,《前端校招面试题精编解析大全》,《前端面试题宝典》,《前端面试题:常用算法》PDF完整版点击这里免费领取3)]整理面试题,不是让大家去只刷面试题,而是熟悉目前实际面试中常见的考察方式和知识点,做到心中有数,也可以用来自查及完善知识体系。《前端基础面试题》,《前端校招面试题精编解析大全》,《前端面试题宝典》,《前端面试题:常用算法》PDF完整版点击这里免费领取。

2401_84092574的博客 1002

Vue简单TODOlist

vue简单Todolist不说废话直接上代码。。。。 不说废话直接上代码。。。。 第一次发博客,各位大牛、大佬们不喜勿喷,个人记录,BUG肯定是有,主要面向于初学者 。。。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> ...

pengpeng9512的博客 219

前端经典——todolist(html+javascript)

todolist项目可谓是前端学员的一个必修项目,各式各样的前端框架都可以从这个简单的小项目练起,在使用框架开发两年的时间呢,最近感觉对原生js的一些用法生疏的很,便借用这个基础小项目复习了一下js语言,同时也适用于刚接触前端的同学,下面就是一些示例图和代码,感兴趣的小伙伴来看看吧。

vh_YUNYANGYUMO的博客 1675

用Vue3.0写出一个简单的TodoList案例

由于工作需要,以后可能会敲vue代码了,所以今天开始会零散的记录一下自己学Vue3.0的一些案例。 就从经典的TodoList案例开始吧~ 也算补上之前react的todolist案例的坑吧🎁简单的在草稿纸上写出页面的整体设计思路为3层div包裹,希望刚开始学习的时候,一定要自己去实际动手去画出大概的效果图。再简单不过的页面设计了。一.在vue的template标签中编写html文件根据上面的草图来写出简单的结构,非常简单的代码。三个来完成草稿的大概实现。设计静态页面为下图所示。二.最首先的功能就是,如何.

fang_my的博客 1705

手摸手从零到一开发一个灵活的Todolist便签项目

带你从零开始开发一个完整的效率工具,详细的开发思路配上完整的源码,看完就可以自己动手完成一整个项目的开发,手摸手系列文章,看了就会!!!

青柠的博客 2171

前端小案例 | 喵喵大王立大功 | 一个带便利贴功能的todolist面板

喵喵大王立大功 :一个带便利贴功能的todolist面板。

知识库搭建ing 607

实战篇 TodoList (前端 Vue2 —— 前后端联调)

TodoList案例前后端我们都已经实现完毕了,目前美中不足的是前端页面只是静态的,后端的API也只能够通过Apifox这样的接口测试工具去调用,明明是一个项目,但是它俩好像隔了一堵墙,有没有一个工具能够打通这堵墙,让它俩产生一些千丝万缕的联系。这篇文章会重点介绍这个工具,以及使用过程中会产生的问题和解决方案。

m0_56825253的博客 786

React入门实战实例——ToDoList实现

摘要: 最近学习了一小段时间的React,对一些React开发组件的基础有了一点认识,跟着教学视频,自己实现了一个ToDoList组件的功能,今天把做这个组件的过程记录一下,加深学习印象,给同样的前端入门者做一个参考。 一、实例展示和功能介绍 1.1 实例展示 视频1.1 1.2 功能介绍 添加待办事项,按enter键确定,同时清空输入框; 通过checkbox是否...

CherishTheYouth的博客 2962

前端杂货铺——TodoList

My TodoList

HuoZhiyan 的博客 518

todolist项目 前端 jQuery 代码

根据黑马视频(pink老师)的教程写的todolist项目记录,页面/页面样式是从官网扒取下来的,主要是样式代码 项目需求分析: 可以自行打开todolist的官网更好体会功能需求 参考链接http://www.todolist.cn/ 第一步: 搭建文件结构 第二步: 了解本项目的存储的数据: 1.本地localStorage存的是字符串形式 2.页面上使用的是对象格式 <script> var tidolist = [ {

qq_43531541的博客 1016

Vue案例之实现ToDolist

核心竞争力,怎么才能提高呢?成年人想要改变生活,逆转状态?那就开始学习吧~万事开头难,但是程序员这一条路坚持几年后发展空间还是非常大的,一切重在坚持。为了帮助大家更好更高效的准备面试,特别整理了《前端工程师面试手册》电子稿文件。

2401_84091628的博客 947

Vue3零基础入门:第一个TodoList应用

于是决定做一个简单的TodoList应用,既能练习基础语法,又能理解Vue的核心概念。下面记录下我的学习过程,希望对同样想入门Vue3的朋友有帮助。上操作特别流畅,不需要配置环境,代码修改实时生效,还能一键部署分享给别人体验。建议初学者可以在这个基础上继续扩展,比如添加分类标签、设置提醒时间、拖拽排序等功能,逐步深入Vue3的世界。加上简单的CSS美化界面,比如完成的任务添加删除线。函数返回一个对象,里面定义的属性会自动变成响应式的。数组,当它变化时,界面会自动更新。绑定复选框,修改对应任务的。

MoonbeamRaven28的博客 765
上一篇: c语言迷宫问题求解——递归、栈回溯
下一篇: js实现一个简单的计算器,初学前端第二个小作品
黄金贼贼
博客等级 码龄8年 43粉丝 30原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值