
本教程将指导您如何使用纯javascript构建一个待办事项列表,并解决在动态生成列表项时,点击“完成”按钮仅第一个列表项能正确变色的问题。核心在于理解`document.getelementbyid`的局限性,并学会通过事件处理函数传递当前元素引用(`this`)来准确地操作特定列表项的父元素,从而实现每个待办事项的独立样式更新。
在Web开发中,动态生成和管理DOM元素是常见的需求,例如构建一个待办事项列表。一个常见的挑战是,当用户添加多个待办事项后,点击某个事项旁的“完成”按钮,却发现只有第一个事项的样式发生了变化,而其他事项无响应。这通常是由于对DOM元素选择器和事件处理上下文的误解所导致。本教程将深入探讨这一问题,并提供一个简洁高效的纯JavaScript解决方案。
首先,我们需要一个基本的HTML结构来承载待办事项列表。这包括一个输入框用于添加新任务,一个按钮触发添加操作,以及一个无序列表(<ul>)来显示所有的待办事项。为了美观和功能性,我们也会添加一些基本的内联CSS样式。
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>纯JavaScript待办事项列表</title>
<style>
body {
font-family: Arial, sans-serif;
background-color: #f4f4f4;
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
margin: 0;
}
.container {
background-color: #fff;
padding: 30px;
border-radius: 8px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
width: 400px;
max-width: 90%;
}
h1 {
text-align: center;
color: #333;
margin-bottom: 20px;
}
form {
display: flex;
margin-bottom: 20px;
}
input[type="text"] {
flex-grow: 1;
padding: 10px;
border: 1px solid #ddd;
border-radius: 4px;
font-size: 16px;
}
.addBtn {
padding: 10px 15px;
background-color: #007bff;
color: white;
border: none;
border-radius: 4px;
cursor: pointer;
margin-left: 10px;
font-size: 16px;
}
.addBtn:hover {
background-color: #0056b3;
}
ul {
list-style: none;
padding: 0;
}
li {
background-color以上就是JavaScript待办事项列表:动态改变列表项样式与正确处理事件的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号