zoukankan      html  css  js  c++  java
  • 原生JavaScript实现一个简单的todo-list

    直接上代码:

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title></title>
    	<style>
    
    	</style>
    </head>
    <body>
    	<h1>todolist</h1>
    	<input type="text">
    	<ul>
    
    	<ul>
    	<script>
    		var oInput = document.getElementsByTagName("input")[0];
    
    		oInput.onkeydown = function(event) {
    
    			var event = event || window.event;
    			if(event.keyCode == 13) {
    				// 添加数据
    				var data = this.value;
    				addData(data);
    				// 清空数据
    				clearData();
    			}
    		}
    
    		// 模糊查询
    		oInput.oninput = function() {
    			var arrLi = document.getElementsByTagName("li");
    			var arr = [];
    			
    			for(var i = 0;i < arrLi.length;i++) {
    				if(arrLi[i].firstChild.innerHTML.trim().indexOf(this.value.trim()) != -1) {
    					arr.push(i);
    				}
    			}
    			// show
    			show(arr);
    		};
    
    
    		function show(arr) {
    			var arrLi = document.getElementsByTagName("li");
    			// 隐藏所有
    			for(var i = 0;i < arrLi.length;i++) {
    				arrLi[i].style.display = "none";
    			}
    
    			// 显示
    			if(arr.length > 0) {
    				for(var i = 0;i < arr.length;i++) {
    					arrLi[arr[i]].style.display = "block";
    				}
    			} else {
    				for(var i = 0;i < arrLi.length;i++) {
    					arrLi[i].style.display = "block";
    				}
    			}
    
    		}
    
    		function addData(data)  {
    			var tempLi = document.createElement("li");
    			var tempBtn = document.createElement("button");
    			var tempSpan = document.createElement("span");
    			var oUl = document.getElementsByTagName("ul")[0];
    
    			tempBtn.innerHTML = "delete";
    			tempBtn.name = "delete";
    			tempSpan.innerHTML = data;
    			tempLi.appendChild(tempSpan);
    			tempLi.appendChild(tempBtn);
    			oUl.appendChild(tempLi);
    		}
    
    		function clearData() {
    			var oInput = document.getElementsByTagName("input")[0];
    
    			// 不能用innerHTML
    			oInput.value = "";
    		}
    
    		// 点击删除
    		var oUl = document.getElementsByTagName("ul")[0];
    		oUl.onclick = function(event) {
    			var event = event || window.event;
    			var target = event.target;
    
    			if(target.name == "delete") {
    				target.parentNode.parentNode.removeChild(target.parentNode);
    			}
    		};
    
    	</script>
    </body>
    </html>
    
  • 相关阅读:
    2012的目标
    让顺丰快递给折腾了,昨晚发的快递,现在还没挪地方
    做的FM收音机终于交工,老婆验收完毕
    C语言宏定义使用技巧
    20棵树植树问题
    C简单实现动态2维数组
    运动量测试
    #pragma pack(n)的含义及其用法
    回调函数
    ubuntu 全局配置文件
  • 原文地址:https://www.cnblogs.com/yzfdjzwl/p/6675551.html
Copyright © 2011-2022 走看看