用JS待办事项工具,效果如图 6-33 所示 (1)单击“添加”按钮,将文本框中输入内容显示在下方的列表中。如果文本框内容为空弹出提示框“请输入待办事项”。(2)单击“删除”按钮,将当前列表项删除。 (3)单击“完成”按钮,将当前列表项的背景色设置为绿色
时间: 2024-01-21 18:19:14 浏览: 74
一个待办事项列表界面(可添加删除)
以下是一个简单的用 JavaScript 实现待办事项工具的示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<title>待办事项工具</title>
<style>
body {
font-family: Arial, sans-serif;
}
h1 {
text-align: center;
}
#new-todo {
margin-bottom: 10px;
padding: 5px;
width: 300px;
font-size: 16px;
}
#todo-list {
list-style: none;
padding: 0;
margin: 0;
}
.todo-item {
padding: 5px;
margin-bottom: 5px;
background-color: #fff;
border: 1px solid #ccc;
border-radius: 5px;
position: relative;
}
.todo-item.completed {
background-color: #cfc;
}
.delete-btn {
position: absolute;
top: 5px;
right: 5px;
font-size: 12px;
cursor: pointer;
}
.complete-btn {
position: absolute;
top: 5px;
left: 5px;
font-size: 12px;
cursor: pointer;
}
</style>
</head>
<body>
<h1>待办事项工具</h1>
<input type="text" id="new-todo" placeholder="请输入待办事项">
<ul id="todo-list"></ul>
<script>
const newTodoInput = document.getElementById('new-todo');
const todoList = document.getElementById('todo-list');
function addTodo() {
const text = newTodoInput.value.trim();
if (text === '') {
alert('请输入待办事项');
return;
}
const todoItem = document.createElement('li');
todoItem.className = 'todo-item';
todoItem.innerHTML = `
${text}
<span class="delete-btn" title="删除">X</span>
<span class="complete-btn" title="完成">✓</span>
`;
const deleteBtn = todoItem.querySelector('.delete-btn');
deleteBtn.addEventListener('click', function() {
todoList.removeChild(todoItem);
});
const completeBtn = todoItem.querySelector('.complete-btn');
completeBtn.addEventListener('click', function() {
todoItem.classList.add('completed');
});
todoList.appendChild(todoItem);
newTodoInput.value = '';
}
document.addEventListener('keydown', function(event) {
if (event.keyCode === 13) {
addTodo();
}
});
</script>
</body>
</html>
```
在该示例代码中,我们首先通过 `document.getElementById` 方法获取了输入框和待办事项列表的 DOM 元素。然后定义了一个 `addTodo` 函数,该函数会获取输入框中的文本,如果为空则弹出提示框,否则创建一个新的列表项,并添加到待办事项列表中。在创建列表项时,我们使用了字符串模板和 DOM 操作创建了一个包含删除和完成按钮的列表项 HTML。同时,我们还为删除按钮和完成按钮添加了点击事件监听器,分别实现了删除和完成功能。最后,我们通过 `document.addEventListener` 方法监听了键盘按下事件,并在按下回车键时调用 `addTodo` 函数。
阅读全文