Web前端之实现酷炫的仪表进度条、JavaScript动态设置Css属性值、标签元素属性选择器、hsl样式函数
MENU效果图HtmlJavaScriptStyle解析效果图Htmldivclassmain/divinputtyperangeidrangevalue0pidpc0%/pJavaScriptfunctioninit(){letmaindocument.querySelector(.main);letrangedocument.querySelector(#range);letpcdocument.querySelector(#pc);for(let i0;i100;i){letspandocument.createElement(span);span.style.transformrotate(${i /100*360}deg);main.appendChild(span);}range.addEventListener(input,(){range.style.backgroundSize${range.value}%100%;pc.innerHTML${range.value}%;chColor(range.value);});functionchColor(val){for(let i0;imain.children.length;i){if(ival){main.children[i].style.setProperty(--bg,hsl(${i /100*360},100%,50%));main.children[i].style.setProperty(--sg,hsl(${i /100*360},100%,50%));}else{main.children[i].style.setProperty(--bg,#000000);main.children[i].style.setProperty(--sg,transparent);}}}}init();Style*{margin:0;padding:0;box-sizing:border-box;}body{background-color:#333333;display:flex;width:100%;height:100vh;justify-content:center;align-items:center;}.main{width:30vw;height:30vw;position:absolute;display:flex;justify-content:start;align-items:center;}input[typerange]{--c:#1e90ff;width:30vw;height:1vw;position:absolute;transform:translateY(20vw);appearance:none;background:linear-gradient(var(--c),var(--c))no-repeat,#000000;background-size:0 100%;border-radius:0.5vw;cursor:pointer;}input[typerange]::-webkit-slider-thumb{width:2vw;height:2vw;appearance:none;background:var(--c);border-radius:50%;box-shadow:0 0 1vw #ffffff,0 0 2vw #ffffff;}#pc{color:#ffffff;font-size:8vw;font-family:Arial,Helvetica,sans-serif;text-shadow:0.2vw 0.2vw 0 gray,0 0 1vw #1e90ff,0 0 2vw #1e90ff,0 0 4vw #1e90ff;}.main span{--bg:#000000;--sg:transparent;position:absolute;width:100%;height:100%;display:flex;justify-content:center;align-items:start;}.main span::after{content:;width:0.1vw;height:2vw;position:absolute;background:var(--bg);box-shadow:0 0 0.5vwvar(--sg),0 0 1vwvar(--sg),0 0 2vwvar(--sg);transition:0.8s linear;}解析代码创建了一个简单的界面其中有一个可拖动的滑块(range input)滑块的值会导致一系列旋转的条状元素的颜色和长度发生变化。html一个div元素类名为main用于容纳条状元素。一个input元素类型为range具有id为range用于控制条状元素的变化。一个p元素id为pc用于显示滑块的值。style一些基本的样式设置如去除默认的内外边距设置全局的盒模型为边框模型背景颜色等。设置主体的背景颜色为深灰色。设置.main元素的样式定义了它的大小和位置等。设置input[type‘range’]和其thumb(滑块拖动的圆球)的样式。设置#pc元素的样式定义了它的字体大小、颜色和阴影效果。设置.main span元素的样式定义了条状元素的样式包括颜色、阴影等。JavaScriptinit()函数用于初始化页面获取相关元素并设置滑块的事件监听器。在循环中通过创建span元素的方式创建了一系列条状元素并将它们添加到.main元素中。滑块的输入事件监听器会根据滑块的值改变背景的大小、滑块下方文字的内容并调用chColor()函数改变条状元素的颜色。chColor()函数根据传入的值改变条状元素的背景颜色使用HSL颜色空间从黑色到彩虹色渐变。总体来说这段代码实现了一个简单的滑块控制条状元素颜色和长度变化的效果。

相关新闻

Web前端之UniApp、Taro、ReactNative和Flutter的区别

Web前端之UniApp、Taro、ReactNative和Flutter的区别

MENU前言介绍及公司技术差异使用方法使用场景差异注意事项打包与部署差异框架应用实例结语前言 在移动应用开发领域,跨平台框架已成为开发者的得力工具。UniApp、Taro、ReactNative和Flutter它们在Android(安卓)或iOS(苹果&#x…

2026/5/17 8:52:30 阅读更多 →
Webpack5.6.0解决报The ‘mode‘ option has not been set, webpack will fallback to ‘production‘ fo的错误、问题

Webpack5.6.0解决报The ‘mode‘ option has not been set, webpack will fallback to ‘production‘ fo的错误、问题

MENU1、打包报错信息2、解决方案2.1、设置package.json2.2、设置webpack.config.js3、相关文章1、打包报错信息 // WARNING in configuration // The mode option has not been set, webpack will fallback to production // for thisvalue. Set mode option to development o…

2026/5/17 8:52:29 阅读更多 →
Web前端之多行文本擦除效果、文本逐个显示或展示、创建元素标签、requestAnimationFrame、querySelector、createElement、appendChild

Web前端之多行文本擦除效果、文本逐个显示或展示、创建元素标签、requestAnimationFrame、querySelector、createElement、appendChild

MENU版本一(requestAnimationFrame)版本二(setTimeout)版本三(Style)版本一(requestAnimationFrame) 前言 window.requestAnimationFrame()告诉浏览器——你希望执行一个动画,并且要求浏览器在下次重绘之前调用指定的回调函数更新动画。该方法需要传入一个回调函数…

2026/7/5 11:09:28 阅读更多 →

最新新闻

博物馆文物低蓝光照明改造为什么首选KNX?系统方案、优势与行业避坑指南

博物馆文物低蓝光照明改造为什么首选KNX?系统方案、优势与行业避坑指南

一、引言:文物照明改造,不止“调亮调暗”这么简单博物馆日常运维里,光照对展品的损害是持续累积的,尤其书画、古籍、丝织品、壁画这类光敏材质,照度不准、光谱不对,时间一长就是褪色、脆化、剥落&#xff0…

2026/7/7 7:46:03 阅读更多 →
3分钟上手Real-ESRGAN-ncnn-vulkan:打造高性能图像超分辨率神器

3分钟上手Real-ESRGAN-ncnn-vulkan:打造高性能图像超分辨率神器

3分钟上手Real-ESRGAN-ncnn-vulkan:打造高性能图像超分辨率神器 【免费下载链接】Real-ESRGAN-ncnn-vulkan NCNN implementation of Real-ESRGAN. Real-ESRGAN aims at developing Practical Algorithms for General Image Restoration. 项目地址: https://gitcod…

2026/7/7 7:46:03 阅读更多 →
Aimmy:重新定义游戏公平竞技的AI瞄准辅助,让每位玩家都能享受射击游戏的乐趣

Aimmy:重新定义游戏公平竞技的AI瞄准辅助,让每位玩家都能享受射击游戏的乐趣

Aimmy:重新定义游戏公平竞技的AI瞄准辅助,让每位玩家都能享受射击游戏的乐趣 【免费下载链接】Aimmy Universal Second Eye for Gamers with Impairments (Universal AI Aim Aligner (AI Aimbot) - ONNX/YOLOv8 - C#) 项目地址: https://gitcode.com/g…

2026/7/7 7:44:03 阅读更多 →
专业的EMBA综合实力TOP5榜单深度评测

专业的EMBA综合实力TOP5榜单深度评测

一、评测引言随着国内企业全球化布局加速、数字化转型深入,兼具国际化视野与本土落地能力的中英双语EMBA项目,成为企业创始人、高层管理者突破管理瓶颈、搭建全球资源网络的核心选择。当前市场EMBA项目品类繁杂,内地高校、港澳院校项目各有优…

2026/7/7 7:40:02 阅读更多 →
多机器人路径规划为何要抛弃Sum of Costs?执行时间可预测性才是工业核心

多机器人路径规划为何要抛弃Sum of Costs?执行时间可预测性才是工业核心

1. 为什么Sum of Costs在多机器人调度中越来越“不准”了?我第一次在物流分拣中心看到那套号称“最优”的多机器人路径规划系统时,心里就打了个问号。系统输出的Sum of Costs(所有机器人路径长度之和)是237.8秒,现场工…

2026/7/7 7:40:02 阅读更多 →
百度网盘直链解析工具:三步获取高速下载链接的完整指南

百度网盘直链解析工具:三步获取高速下载链接的完整指南

百度网盘直链解析工具:三步获取高速下载链接的完整指南 【免费下载链接】baidu-wangpan-parse 获取百度网盘分享文件的下载地址 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wangpan-parse 你是否曾因百度网盘的下载速度而烦恼?非会员用户…

2026/7/7 7:38:02 阅读更多 →

日新闻

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

鸿蒙新特性:图片画廊与轮播导航——构建沉浸式图片浏览体验

图片浏览是移动应用中最高频的场景之一。从社交应用的照片流到电商平台的商品图集,从旅游应用的景点相册到摄影作品展示——用户对图片浏览的体验要求不断提高:流畅的切换动画、直观的缩略图导航、便捷的收藏操作、自动播放模式。HarmonyOS NEXT ArkUI 虽…

2026/7/7 0:05:16 阅读更多 →
24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V DC-DC降压芯片PW2312B/PW2815,SOT23-6到SOP8-EP方案对比

24V稳压芯片完整选型指南 PW8600 PW75XX PW2815 PW2312B LDODC/DC全方案 一、24V稳压方案概述 24V直流电源在工业自动化、门禁系统、电梯控制、汽车电子、LED驱动、监控设备等场景中应用极广,是最常见的中压直流母线电压。要将24V母线稳定降压至下游MCU、传感器…

2026/7/7 0:05:16 阅读更多 →
RAG+知识图谱混合检索与Graph RAG核心对比

RAG+知识图谱混合检索与Graph RAG核心对比

做企业RAG落地的团队,往往容易卡在一容易踩坑的选型难题: 当需求单纯靠向量RAG搞不定、单纯靠知识图谱也搞不定,必须同时依赖「文本语义理解 实体关系推理」时,到底是做「向量图谱混合检索」就够了,还是必须上「Grap…

2026/7/7 0:07:19 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/6 8:11:50 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/6 8:11:52 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/6 6:52:56 阅读更多 →

月新闻