Java Script网页设计案例
1. JavaScript网页设计案例
下面我将提供一个简单的JavaScript网页设计案例,该案例将实现一个动态的待办事项列表(Todo List)。用户可以在页面上添加新的待办事项,标记它们为已完成,以及删除它们。这个案例将使用HTML来构建页面结构,CSS来美化页面,以及JavaScript来添加动态功能。
1.1 HTML (index.html)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Todo List</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1>Todo List</h1>
<input type="text" id="todoInput" placeholder="Add new todo...">
<button onclick="addTodo()">Add Todo</button>
<ul id="todoList">
<!-- Todo items will be added here -->
</ul>
<script src="script.js"></script>
</body>
</html>
1.2 CSS (style.css)
body {
font-family: Arial, sans-serif;
margin: 20px;
padding: 0;
}
#todoList {
list-style-type: none;
padding: 0;
}
#todoList li {
margin: 10px 0;
padding: 10px;
background-color: #f4f4f4;
border: 1px solid #ddd;
display: flex;
align-items: center;
justify-content: space-between;
}
#todoList li.completed {
text-decoration: line-through;
opacity: 0.5;
}
#todoInput {
padding: 10px;
margin-right: 10px;
width: calc(100% - 120px);
}
button {
padding: 10px 20px;
cursor: pointer;
}
1.3 JavaScript (script.js)
function addTodo() {
const input = document.getElementById('todoInput');
const list = document.getElementById('todoList');
const itemText = input.value.trim();
if (itemText) {
const itemElement = document.createElement('li');
itemElement.textContent = itemText;
// Checkbox for marking todo as completed
const checkbox = document.createElement('input');
checkbox.type = 'checkbox';
checkbox.onclick = function() {
itemElement.classList.toggle('completed', this.checked);
};
// Button for deleting todo
const deleteButton = document.createElement('button');
deleteButton.textContent = 'Delete';
deleteButton.onclick = function() {
list.removeChild(itemElement);
};
// Append elements to the list item
itemElement.appendChild(checkbox);
itemElement.appendChild(document.createTextNode('\u00A0')); // Add space
itemElement.appendChild(deleteButton);
// Append list item to the list
list.appendChild(itemElement);
// Clear input field
input.value = '';
}
}
// Optionally, add event listener to input field for Enter key press
document.getElementById('todoInput').addEventListener('keypress', function(event) {
if (event.key === 'Enter') {
addTodo();
}
});
1.4说明
(1)HTML 部分定义了页面的基本结构,包括一个输入框用于输入待办事项,一个按钮用于添加待办事项,以及一个无序列表用于显示待办事项。
(2)CSS 部分美化了页面,包括待办事项列表的样式、输入框和按钮的样式。
(3)JavaScript 部分实现了动态功能:
- 监听“添加待办事项”按钮的点击事件,并调用
addTodo函数。 addTodo函数从输入框中获取文本,创建一个新的列表项,并为其添加复选框和删除按钮。- 复选框用于标记待办事项为已完成,点击时切换列表项的样式。
- 删除按钮用于从列表中删除待办事项。
- 监听输入框的
keypress事件,以便在按下 Enter 键时也能添加待办事项。
这个案例展示了如何使用HTML、CSS和JavaScript来创建一个具有基本动态功能的网页应用。
2. JavaScript网页设计案例不同的功能和设计思路展示
除了上述的待办事项列表案例外,还有许多其他类似的JavaScript网页设计案例,这些案例展示了不同的功能和设计思路。以下是一些常见的案例及其简要描述:
2.1 图片画廊(Image Gallery)
(1)功能描述:
- 展示一组图片,并支持点击放大查看。
- 使用HTML和CSS创建图片网格布局。
- 使用JavaScript处理图片点击事件,显示放大的图片。
(2)代码示例(简化版):
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Image Gallery</title>
<style>
.gallery img {
width: 100px; /* 或其他尺寸 */
height: auto;
margin: 10px;
cursor: pointer;
}
.modal {
display: none;
position: fixed;
z-index: 1;
/* 其他模态框样式 */
}
.modal-content {
/* 放大图片的样式 */
}
</style>
</head>
<body>
<div class="gallery">
<img src="data:image1.jpg" alt="Image 1">
<img src="data:image2.jpg" alt="Image 2">
<!-- 更多图片 -->
</div>
<div id="modal" class="modal">
<span class="close">×</span>
<img class="modal-content" id="modalImg">
</div>
<script>
// JavaScript 代码,用于处理点击事件和显示模态框
// ...(省略详细实现)
</script>
</body>
</html>
2.2 简易天气应用(Weather App)
(1)功能描述:
- 获取并显示天气信息。
- 使用天气API(如OpenWeatherMap)获取实时天气数据。
- 使用JavaScript动态更新页面内容。
(2)代码示例(简化版,需要替换API密钥):
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Weather App</title>
</head>
<body>
<h1>Weather App</h1>
<input type="text" id="cityInput" placeholder="Enter city">
<button id="getWeather">Get Weather</button>
<div id="weatherResult"></div>
<script>
const apiKey = 'YOUR_API_KEY'; // 替换为你的API密钥
document.getElementById('getWeather').onclick = function() {
const city = document.getElementById('cityInput').value;
fetch(`https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=${apiKey}&units=metric`)
.then(response => response.json())
.then(data => {
const temp = data.main.temp;
const weatherDescription = data.weather[0].description;
document.getElementById('weatherResult').innerHTML = `Temperature: ${temp}°C<br>Description: ${weatherDescription}`;
})
.catch(error => {
document.getElementById('weatherResult').innerHTML = 'City not found.';
});
};
</script>
</body>
</html>
2.3 动态表格(Dynamic Table)
(1)功能描述:
- 展示一个表格,表格内容可以动态添加、删除或修改。
- 使用HTML创建表格结构。
- 使用JavaScript处理数据的增删改操作,并动态更新表格内容。
(2)代码示例(由于篇幅限制,仅提供概念性描述):
- 创建一个HTML表格,包含表头和若干行。
- 使用JavaScript添加按钮或输入框,以便用户输入新数据。
- 编写JavaScript函数来处理添加、删除和修改数据的逻辑。
- 使用DOM操作动态更新表格内容。
这些案例涵盖了网页设计的不同方面,从基本的图片展示到实用的天气查询,再到动态的数据处理。它们都是学习JavaScript网页开发的良好起点,并可以根据实际需求进行扩展和定制。
Java Script网页设计案例的更多相关文章
- Httpster –世界各地最潮的网页设计案例聚合网站
Httpster 这个网站聚合了世界各地最新最潮的网页设计案例,展示了创意的设计,精心的策划,优秀的排版.这些作品都按月份和类别进行了很好划分,你可以方便的找到自己感兴趣的网站案例. 立即去看看 您可 ...
- 网页设计、java、Andorid资源清单整理
多学多练做笔记很重要. 赤裸裸的干货非鸡汤 网页设计的主要技术: Html, Js, Css, Ps HTML/HTML5 网页的基础Html必须知道的.但 ...
- HTML5+CSS3的响应式网页设计:自动适应屏幕宽度
这几天都在修改博客上面的样式.本来用的是d83.0的模板.自己又修改了许多地方,其中自己修改的一些地方在手机里面显示的效果不是很理想,于是想改成自适应的效果.对CSS3不是特别的熟练,只能去网上找找案 ...
- Java Script 学习笔记 -- 基础知识
Java script 概述 java Script 的简介 JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型.它的解释器被称为JavaScript引擎,为 ...
- Java Script 第一章.
什么是Java script? JavaScript是一种基于对象的脚本语言,用于开发基于客户端和基于服务器的Internet应用程序 JavaScript是一种脚本语言(脚本语言是一种轻量级的编程语 ...
- Java Script 编码规范【转】
Java Script 编码规范 以下文档大多来自: Google JavaScript 编码规范指南 Idiomatic 风格 参考规范 ECMAScript 5.1 注解版 EcmaScript ...
- 自适应网页设计(Responsive Web Design)
引用:http://www.ruanyifeng.com/blog/2012/05/responsive_web_design.html 随着3G的普及,越来越多的人使用手机上网. 移动设备正超过桌面 ...
- 15个前卫的 HTML5 & CSS3 网页设计作品
今天,我们编译收集一组使用 HTML5 和 CSS3 制作的精美网站.在此集合中,你可以看到平面设计,网页设计,作品集和企业网站设计实例. 响应式设计和基于 HTML5 & CSS3 编码的网 ...
- 经典网页设计:20个与众不同的国外 HTML5 网站
大家都都知道, HTML5 具备所有最新的技术和功能,帮助我们创造平滑过渡,花式图像滑块和动画.如果你正在考虑使用HTML5 来设计自己的网站,那么这个集合能够帮助你. 在过去的10年里,网页设计师使 ...
- 经典网页设计:20个华丽的 iPhone 应用程序演示网站
一个物品销售很好,重要的原因之一是它的包装,因为这是最重要的细节,可以把一个人转变成购买者.一个好的包装设计和良好的表现比产品本身更重要,因此被分配了大量的金钱和资源,以创造伟大的东西. 因此,为了销 ...
随机推荐
- 基于Bootstrap Blazor开源的.NET通用后台权限管理系统
前言 今天大姚给大家分享一个基于Bootstrap Blazor开源的.NET通用后台权限管理系统,后台管理页面兼容所有主流浏览器,完全响应式布局(支持电脑.平板.手机等所有主流设备),可切换至 Bl ...
- 金蝶云·苍穹追光者开发大赛,点燃高校AI应用创新之火
在 2024 年的政府工作报告中,"人工智能 +" 行动被提出,标志着人工智能成为推动我国新质生产力发展的关键力量.与此同时,今年的高考作文有一道题目也聚焦于人工智能,再次凸显了这 ...
- FreeRDP使用,快速找出账户密码不正确的服务器地址
最近有个需求,需要找出服务器未统一设置账户密码的服务器,进行统一设置,一共有一百多台服务器,一个个远程登录看,那得都费劲啊,这时候就可以用到FreeRDP这个远程桌面协议工具,FreeRDP下载,根据 ...
- ComfyUI进阶篇:ComfyUI核心节点(四)
ComfyUI核心节点(四) 前言: 学习ComfyUI是一场持久战.当你掌握了ComfyUI的安装和运行之后,会发现大量五花八门的节点.面对各种各样的工作流和复杂的节点种类,可能会让人感到不知所措. ...
- 虚拟 DOM 实现原理?
虚拟 DOM 的实现原理主要包括以下 3 部分: 用 JavaScript 对象模拟真实 DOM 树,对真实 DOM 进行抽象: diff 算法 - 比较两棵虚拟 DOM 树的差异: pach 算法 ...
- Java-Filter:过滤器请求拦截
1.概念 web中的过滤器:当访问服务器资源时,过滤器可以将请求拦截下来,完成一些特殊的功能 过滤器的作用: 一般用于完成通用的操作,如:登录验证,统一编码处理,敏感字符过滤 2.快速入门 1.步骤 ...
- JavaScript高级~数组偏平化
方式一: let arr=[11,[22,[33,[44]]],[55,66,77],88,99,['00']] let arr2=arr.toString().split("," ...
- 【JavaScript高级01】JavaScript基础深入
1,数据类型 JavaScript将数据分为六大类型,分别为数值类型(number).字符串类型(string).布尔类型(boolean).undefined(定义未赋值).null(赋值为空值). ...
- ElementUI Dialog 结合Vue实现对话框body“二分”布局
Dialog 结合Vue实现对话框body"二分"布局 需求描述 如下图, 把对话框body内容部分,分成上下两部分,其中上部分高度根据窗口大小动态调整,如果内容过多,则出现滚动条 ...
- Vue 给mapState中定义的属性赋值报错的解决方案
Vue 给mapState中定义的属性赋值报错的解决方案 by:授客 QQ:1033553122 1. 实践环境 Vue 2.9.6 2. 问题描述 <script> import ...