JavaScript网页设计案例

以下是一个使用 JavaScript 进行网页设计的简单案例:

一、案例介绍

这个案例是一个简单的待办事项列表应用。用户可以在输入框中输入待办事项,点击"添加"按钮将其添加到列表中。每个待办事项旁边有一个"完成"按钮和一个"删除"按钮,用户可以点击"完成"按钮将待办事项标记为已完成,点击"删除"按钮将其从列表中删除。

二、HTML 结构

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>待办事项列表</title>
    <link rel="stylesheet" href="styles.css">
</head>

<body>
    <h1>待办事项列表</h1>
    <input type="text" id="todoInput" placeholder="输入待办事项">
    <button id="addButton">添加</button>
    <ul id="todoList"></ul>
    <script src="script.js"></script>
</body>

</html>

三、CSS 样式(styles.css)

css 复制代码
body {
    font-family: Arial, sans-serif;
    background-color: #f4f4f4;
}

h1 {
    text-align: center;
}

input[type="text"] {
    padding: 10px;
    width: 300px;
    font-size: 16px;
}

button {
    padding: 10px 20px;
    font-size: 16px;
    background-color: #4CAF50;
    color: white;
    border: none;
    cursor: pointer;
}

ul {
    list-style-type: none;
    padding: 0;
}

li {
    background-color: #fff;
    padding: 10px;
    margin: 10px 0;
    border: 1px solid #ccc;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

button.completeButton {
    background-color: #2196F3;
}

button.deleteButton {
    background-color: #f44336;
}

四、JavaScript 功能实现(script.js)

javascript 复制代码
// 获取 DOM 元素
const todoInput = document.getElementById('todoInput');
const addButton = document.getElementById('addButton');
const todoList = document.getElementById('todoList');

// 添加待办事项
addButton.addEventListener('click', () => {
    const todoText = todoInput.value.trim();
    if (todoText!== '') {
        const li = document.createElement('li');
        li.textContent = todoText;
        const completeButton = document.createElement('button');
        completeButton.textContent = '完成';
        completeButton.classList.add('completeButton');
        completeButton.addEventListener('click', () => {
            li.classList.toggle('completed');
        });
        const deleteButton = document.createElement('button');
        deleteButton.textContent = '删除';
        deleteButton.classList.add('deleteButton');
        deleteButton.addEventListener('click', () => {
            todoList.removeChild(li);
        });
        li.appendChild(completeButton);
        li.appendChild(deleteButton);
        todoList.appendChild(li);
        todoInput.value = '';
    }
});

在这个案例中,我们使用了 HTML、CSS 和 JavaScript 来创建一个简单的待办事项列表应用。通过 JavaScript,我们实现了添加待办事项、标记为完成和删除待办事项的功能。你可以根据自己的需求进一步扩展和改进这个应用,例如添加本地存储功能,以便在页面刷新后仍然保留待办事项列表。

相关推荐
香芋芋圆4 小时前
iD-editor 详解|OSM官方在线编辑器,基于D3.js的轻量地图编辑器
开发语言·javascript·编辑器
晗夜未央6 小时前
任务队列反复失败,先分清重试、阻塞和结果待核对
开发语言·javascript
jktantan6 小时前
每个节点 41 字节:把一棵百万节点树拆进 14 个 typed array
前端·javascript·vue.js·算法·typescript
我命由我123457 小时前
访客系统形式(有用户概念、无用户概念)
java·开发语言·前端·javascript·python·产品运营·产品经理
程序员大阳8 小时前
副队长JavaScript教程(65)-详解JSON:轻量级数据交换格式
javascript·json·序列化·反序列化·stringify·parse
paopaokaka_luck9 小时前
基于springboot+vue的益暖微光公益服务平台(DeepSeek公益助手、善款信息追溯、志愿服务积分闭环、ECharts运营分析、活动状态自动流转)
java·前端·javascript·spring boot·mysql·架构·echarts
栀椩10 小时前
Electron 内嵌页面跨域问题(CORS/PNA)解决全记录
前端·javascript·electron
SEO_juper10 小时前
Chrome 扩展一键查看当前页面 SEO 信息:不用切页面,点一下全出来
前端·javascript·chrome
Highcharts.js10 小时前
CSUN 2026|Highcharts无障碍数据与AI分享
javascript·人工智能·数据分析·highcharts·图表开发
系统集成-鹰翔10 小时前
ERP推单数据库怎么备份:SQLite WAL模式下只复制db文件为什么可能漏任务
javascript·数据库·经验分享·后端