• 原生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>
    
  • 相关阅读:
    对一些ArcGIS for JS的API的一些理解
    C#中的正则表达式
    IHttpModule接口
    ArcGIS Engine 获取图层中的选择要素的函数封装
    Master Nginx(5)
    python and or的理解规则
    python中try except处理程序异常的三种常用方法
    Python操作excel的几种方式--xlrd、xlwt、openpyxl
    raw_input 和input 区别
    json -- dump load dumps loads 简单对比
  • 原文地址:https://www.cnblogs.com/yzfdjzwl/p/6675551.html
Copyright © 2020-2023  润新知