进度:%

文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

HTML5如何实现自带进度条和滑块滑杆效果

2023-06-09 14:37

关注

小编给大家分享一下HTML5如何实现自带进度条和滑块滑杆效果,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

一、H5自带进度条

 <div id="d">   <p id="pgv">进度:%</p>   <progress id="pg" max="" value=""></progress> </div>

运用progress标签,设置好min和max数值就好。可以用value获取其中的进度值

  function staticProgress () {    var pg = document.getElementById('pg')    var pgv = document.getElementById('pgv')    var timer = setInterval(function () {      if (pg.value !== ) {        pg.value++        pgv.innerHTML = '进度:' + pg.value + '%'      } else {        pgv.innerHTML = '加载完成'       clearInterval(timer)     }   }, ) }

最终效果如下:

HTML5如何实现自带进度条和滑块滑杆效果

这个显示效果是chrome浏览器的,IE和FireFox的是另外的样式!

样式更改:

 progress{      -webkit-appearance: none;  }  ::-webkit-progress-bar{            background-color: orange;        }  ::-webkit-progress-value {     background-color: rgb(, , );      } ::-webkit-progress-inner-element {     border: px solid black;      }

这里的样式全部是针对webkit内核的,其他的不支持~~~  效果如下:

HTML5如何实现自带进度条和滑块滑杆效果

二、H5自带滑块

将input的type设置为range。但是这个属性不是所有浏览器都支持,如果不支持,会返回默认属性,就是<input type="text">

(详情参考https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/range)

默认样式:

HTML5如何实现自带进度条和滑块滑杆效果

 <div id="d">   <p>H可拖动滑块:</p>   <input type="range" name="points" min="" max="" id="hpro"/> </div>

自带属性:

(1)、defaultValue = (rangeElem.max < rangeElem.min) ? rangeElem.min : rangeElem.min + (rangeElem.max - rangeElem.min)/2;

默认值 = (设置最大值 < 设置最小值)?设置最小值 : 设置最小值 + ( 设置最大值 - 设置最小值 ) / 2     &mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash;&mdash; 其实就是取中间值

我们可以用value="7"设置滑块的值。

(2)、<input type="range" min="-10" max="10">

min: 设置最小值; max: 设置最大值

(3)、<input type="range" min="5" max="10" step="0.01">

step: 设置步进值,默认是1。如果min或者max设置了小数点,比如:max="3.14",这个小数点就取不到了,那么可以将step设置为: step="any"。

(4)、hash marks和label:

注意:目前没有哪个浏览器完全支持hash marks和label这两个属性,比如Firefox两个都不支持,Chrome支持hash marks但是不支持label.

a) hash marks:

HTML5如何实现自带进度条和滑块滑杆效果

<input type="range" name="points" min="" max="" step="any" id="hpro"  list="tickmarks"/>  <datalist id="tickmarks">      <option value="">      <option value="">      <option value="">      <option value="">      <option value="">      <option value="">      <option value="">     <option value="">     <option value="">     <option value="">     <option value=""> </datalist>

b) label :

HTML5如何实现自带进度条和滑块滑杆效果

<input type="range" name="points" min="" max="" step="any" id="hpro"  list="tickmarks"/>  <datalist id="tickmarks">      <option value="" label="%">      <option value="">      <option value="">      <option value="">      <option value="">      <option value="" label="%">      <option value="">     <option value="">     <option value="">     <option value="">     <option value="" label="%"> </datalist>

(5)、autofocus可以设置或返回滑块是否自动获得焦点,设置为true后,进入网页会自动锁定滑块,在键盘上按上下左右都可以控制

外观美化:
 

input[type=range] {     outline: none;     -webkit-appearance: none;          border-radius: px; }

-webkit-appearance: none; 去除默认样式

 input[type=range]::-webkit-slider-runnable-track {  height: px;  border-radius: px;  box-shadow:  px px #deff, inset  .em .em #d; }

::-webkit-slider-runnable-track 是个CSS伪类元素,不是所有浏览器都支持。可以获取<input type="range">的轨道

详情参考:https://developer.mozilla.org/en-US/docs/Web/CSS/::-webkit-slider-runnable-track

  input[type=range]::-webkit-slider-thumb {   -webkit-appearance: none;    height: px;   width: px;   margin-top: -px;   background:#BE;   border-radius: %;   border: solid .em rgba(, , , .);   box-shadow:  .em .em #b; }

::-webkit-slider-thumb 可以获取<input type="range">的轨道

看完了这篇文章,相信你对“HTML5如何实现自带进度条和滑块滑杆效果”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网行业资讯频道,感谢各位的阅读!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 资料下载
  • 历年真题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯