使用rough-stuff/wired-elements实现手绘风格进度环组件教程

使用rough-stuff/wired-elements实现手绘风格进度环组件教程

wired-elements Collection of custom elements that appear hand drawn. Great for wireframes or a fun look. wired-elements 项目地址: https://gitcode.com/gh_mirrors/wi/wired-elements

本文将详细介绍如何使用rough-stuff/wired-elements项目中的wired-progress-ring组件创建独特的手绘风格进度环,并实现动态控制功能。

组件概述

wired-progress-ring是rough-stuff/wired-elements库提供的一个Web组件,它能够渲染出具有手绘风格的环形进度条。这种风格特别适合需要非正式、创意或艺术感的Web应用场景。

基础使用

1. 引入组件

首先需要在HTML文件中引入必要的组件:

<script type="module" src="../lib/wired-progress-ring.js"></script>
<script type="module" src="../lib/wired-button.js"></script>

2. 基本属性

最简单的进度环可以通过设置value属性来显示进度:

<wired-progress-ring value="25" hideLabel></wired-progress-ring>
  • value: 设置当前进度值(0-100)
  • hideLabel: 隐藏默认显示的进度标签

3. 自定义范围

进度环支持自定义数值范围,而不仅限于0-100:

<wired-progress-ring id="wp2" min="-100" max="100" value="0"></wired-progress-ring>
  • min: 设置最小值
  • max: 设置最大值

样式定制

可以通过CSS变量来自定义进度环的外观:

#wp2 {
  --wired-progress-color: red;
}

可用的CSS变量包括:

  • --wired-progress-color: 进度条颜色
  • --wired-progress-track-color: 轨道颜色
  • --wired-progress-thickness: 进度条粗细

动态控制

1. 进度显示方式

<wired-progress-ring id="progress" showLabelAsPercent></wired-progress-ring>
  • showLabelAsPercent: 以百分比形式显示进度标签

2. 动态更新进度

通过JavaScript可以动态控制进度环的值:

const prog = document.getElementById('progress')
let timer = 0;

// 开始按钮点击事件
document.getElementById('btns').addEventListener('click', () => {
  if (timer) {
    window.clearInterval(timer);
  }
  timer = window.setInterval(() => {
    if (prog.value >= 100) {
      prog.value = 0;
    } else {
      prog.value = prog.value + 1;
    }
  }, 100);
});

// 停止按钮点击事件
document.getElementById('btnr').addEventListener('click', () => {
  if (timer) {
    window.clearInterval(timer);
    timer = 0;
  }
  prog.value = 0;
});

这段代码实现了:

  1. 点击"Start"按钮开始进度自动增长
  2. 进度达到100%后自动重置为0
  3. 点击"Stop"按钮停止进度变化并重置为0

实际应用建议

  1. 文件上传场景:可以用于显示文件上传进度,增加趣味性
  2. 游戏加载界面:适合休闲游戏的加载界面
  3. 创意仪表盘:为数据仪表盘增加艺术感
  4. 教育应用:用于显示学习进度等场景

注意事项

  1. 确保正确加载组件模块
  2. 动态更新时注意性能,避免过于频繁的DOM操作
  3. 自定义范围时确保min和max的值合理
  4. 移动端使用时注意触摸事件的处理

通过本教程,您应该已经掌握了wired-progress-ring组件的基本使用方法和高级功能。这种手绘风格的组件能为您的Web应用增添独特的视觉效果和用户体验。

wired-elements Collection of custom elements that appear hand drawn. Great for wireframes or a fun look. wired-elements 项目地址: https://gitcode.com/gh_mirrors/wi/wired-elements

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程璞昂Opal

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值