
练习小项目
文章平均质量分 77
唧唧bong_
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
练习小项目11:鼠标跟随小圆点
本文介绍鼠标跟随圆点效果的实现方法:1. 基础版:单个圆点跟随鼠标移动,通过监听mousemove事件更新圆点位置,CSS添加transition实现平滑过渡。2. 进阶版:使用10个圆点形成拖尾效果,通过记录鼠标移动轨迹数组,让每个圆点依次跟随前一个位置,并设置透明度/大小渐变。3. 关键技巧:添加pointer-events:none避免鼠标事件冲突,使用Array.from初始化位置数组,以及通过opacity和transform实现视觉渐变效果。完整代码包含HTML结构、CSS样式和JavaScri原创 2025-06-13 11:10:24 · 715 阅读 · 0 评论 -
练习小项目10:滚动返回顶部
摘要:本文介绍了如何实现"返回顶部"功能。通过监听页面滚动事件(window.scrollY),当滚动超过200px时显示固定定位的按钮。点击按钮时使用window.scrollTo({top:0, behavior:'smooth'})实现平滑滚动回顶部。文中详细说明了HTML结构、CSS样式设置(固定定位、初始隐藏)和JavaScript实现逻辑,并对比了scrollTo方法的传统参数写法与新式对象参数写法的区别。该功能适用于长页面,提升用户体验。原创 2025-05-30 10:24:58 · 263 阅读 · 0 评论 -
练习小项目9:打字效果文字展示(多段文字循环+删除+光标闪烁)
本文介绍使用原生JavaScript实现打字机动画效果。通过维护文本数组,利用状态变量控制"打字"和"删除"两种模式,配合setInterval和setTimeout实现逐字显示、暂停、删除的循环播放效果。CSS部分实现光标闪烁动画,增强视觉效果。核心代码包含文本轮播逻辑、计时器控制和状态切换,适用于网站欢迎语等动态文本展示场景,能有效提升页面交互体验。实现要点包括字符串截取、定时器管理和CSS动画应用。原创 2025-05-29 11:06:14 · 317 阅读 · 0 评论 -
练习小项目8:图片轮播③
本文介绍了轮播图小圆点指示器的实现方法。核心思路包括:初始化显示首图和高亮点,通过点击按钮或圆点切换图片时计算新索引(支持循环),并更新图片显示和圆点高亮状态。HTML结构包含图片容器、控制按钮和圆点容器。CSS设置轮播图样式和圆点交互效果。JavaScript实现功能包括:创建动态圆点并绑定点击事件、图片淡入淡出过渡、自动轮播及鼠标悬停暂停。特别解决了快速切换时动画失效问题:通过setTimeout确保淡出动画完成后再加载新图片,避免因浏览器缓存导致的onload回调失效。原创 2025-05-27 12:09:28 · 364 阅读 · 0 评论 -
练习小项目8:图片轮播②
这篇博客介绍了如何为图片轮播添加淡入淡出动画效果。主要实现方法是通过CSS定义.hidden类实现透明度过渡,在JS中使用onload事件确保图片加载完成后再触发动画。关键点包括:1) 切换图片前先添加hidden类淡出当前图;2) 等新图加载完成(onload)后再移除hidden类实现淡入;3) 添加鼠标悬停暂停播放功能。文章特别解释了为什么必须使用onload事件,否则会导致动画效果失效(图片未加载完就触发动画)。完整代码可参考原博客项目。原创 2025-05-26 10:17:38 · 245 阅读 · 0 评论 -
练习小项目8:图片轮播
这篇文章介绍了一个图片轮播功能的实现方法。主要技术点包括:1)使用数组存储图片URL,通过索引循环切换;2)DOM操作更新图片和样式;3)自动轮播与手动控制交互。关键实现细节:使用模运算处理循环索引,确保"上一张"按钮在首张时跳至末张;手动操作后重置定时器,避免自动切换干扰用户体验。代码提供了完整的轮播逻辑,包括3秒自动切换和手动按钮控制功能,并解释了循环索引计算和定时器重置的原理。原创 2025-05-24 10:34:06 · 608 阅读 · 0 评论 -
练习小项目7:天气状态切换器②
本文介绍了如何为天气状态轮播功能添加“暂停/恢复轮播”按钮以及淡入淡出动画效果。首先,通过setInterval实现天气状态的自动轮播,并通过(i+1)%weatherData.length实现循环。接着,添加一个按钮用于控制轮播的暂停与恢复,通过clearInterval和重新调用setInterval来切换状态,并更新按钮文字。此外,通过添加fade-out类和使用setTimeout延迟文字替换,实现了淡入淡出的动画效果。最后,文章还解释了为什么在初始化时需要主动设置按钮文字,以及setTimeout原创 2025-05-23 11:04:02 · 868 阅读 · 0 评论 -
练习小项目7:天气状态切换器
本项目旨在通过点击按钮实现天气状态的切换,并伴随背景颜色或页面样式的变化。功能包括显示当前天气(如晴天、多云、雨天),点击“切换天气”按钮后,依次切换到下一种天气状态,并更新页面背景和图标。技术点涉及数组索引循环、DOM文本和样式修改、classList切换等。页面结构包括一个显示天气的文本区域和一个切换按钮。JavaScript代码通过数组存储天气数据,使用索引循环实现天气切换,并通过classList动态修改页面样式。CSS部分定义了不同天气对应的背景颜色和文本样式。项目还探讨了循环索引技巧、清空样式的原创 2025-05-22 10:39:10 · 646 阅读 · 0 评论 -
练习小项目6:简单待办事项筛选器
本项目旨在开发一个待办事项管理系统,核心功能包括任务添加、实时筛选和任务删除。用户可以通过输入框添加任务,并利用关键词进行实时筛选,系统将动态显示匹配的任务。若无匹配项,则显示“没有匹配的任务”提示。删除功能允许用户移除特定任务。技术实现上,项目运用了JavaScript的input事件监听、数组的filter()方法以及DOM动态渲染技术,体现了模块化编程思维。此外,代码中通过防御性编程处理了潜在的undefined和NaN情况,增强了程序的健壮性。整体设计简洁高效,旨在提升用户的任务管理体验。原创 2025-05-20 11:31:38 · 393 阅读 · 0 评论 -
练习小项目5:基础计算器
本文介绍了一个实现基本四则运算的网页计算器项目。项目目标是通过用户输入两个数字,点击按钮进行加减乘除运算并显示结果。实现步骤包括获取输入框和按钮、点击按钮时获取输入值并转换为数字、判断是否为有效数字、输出计算结果。文章详细讲解了HTML结构和JavaScript功能实现,强调了使用Number()转换输入值的重要性,以避免字符串拼接问题。此外,文章还探讨了遇到的问题及解决方法,如return后仍显示结果的原因及优化按钮监听器的方法,建议使用事件委托和data-action属性简化代码。最终,通过优化后的代码原创 2025-05-19 10:58:32 · 377 阅读 · 0 评论 -
练习小项目4:实时时钟展示
本项目通过JavaScript实现了一个实时更新的页面时钟,能够每秒显示当前的日期、星期和时间。利用Date对象获取时间信息,并通过setInterval()函数实现每秒更新。时间格式通过字符串拼接和padStart()方法确保两位数显示。HTML结构包括一个标题和一个用于显示时间的div,JavaScript代码通过innerHTML属性动态更新内容,确保页面始终显示最新时间,避免内容累积。此外,文章还解释了innerHTML和textContent的区别,强调了它们在清空和重新插入内容时的作用。原创 2025-05-17 10:37:58 · 202 阅读 · 0 评论 -
练习小项目3:随机正能量语录生成器
本项目通过创建一个包含正能量语录的数组,并利用Math.random()方法随机选取语录,实现了点击按钮时在页面上展示随机语录的功能。关键步骤包括:创建数组、获取DOM元素、绑定点击事件、随机选取语录并更新页面显示。此外,通过添加fade-in动画效果,增强了用户体验。项目中还探讨了如何通过void element.offsetWidth强制触发浏览器重绘,以确保动画在每次点击时都能重新执行。这一技巧利用了浏览器在读取布局属性时必须完成渲染计算的特性,有效解决了动画不重新触发的问题。原创 2025-05-16 10:56:35 · 625 阅读 · 0 评论 -
练习小项目2:今日幸运颜色生成器
本文介绍了一个简单的JavaScript项目,目标是通过点击按钮随机生成一个颜色,并将页面背景改为该颜色,同时显示颜色的HEX值。项目的主要功能包括监听按钮点击事件、随机生成16进制颜色代码、修改页面背景色以及动态更新颜色值的显示。文章详细解释了如何通过Math.random()生成随机颜色,并确保生成的HEX值始终为6位。此外,还总结了项目中涉及的关键技能点,如获取DOM元素、事件监听、颜色生成、样式修改和动态内容更新。通过这个项目,读者可以掌握基本的JavaScript操作和DOM操作技巧。原创 2025-05-15 10:57:48 · 264 阅读 · 0 评论 -
练习小项目1:倒数日小工具
本文介绍了如何通过JavaScript实现一个简单的倒计时功能。用户可以通过输入一个未来日期,点击“计算倒计时”按钮后,页面会显示距离该日期还有多少天。实现步骤包括:获取用户输入的日期、计算与当前日期的差值、将结果动态渲染到页面中。代码中使用了new Date()获取日期对象,getTime()计算时间差,并通过Math.ceil()将时间差转换为天数。此外,还进行了日期合法性检查,并处理了日期已过去或为当天的情况。最后,通过动态生成DOM元素展示结果,提升了用户体验。进阶思考包括支持目标名称输入、重置按钮原创 2025-05-14 14:49:32 · 338 阅读 · 0 评论