HTML5技术

4种input元素滑块UI样式 - 爱上程序猿

字号+ 作者:H5之家 来源:博客园 2016-02-18 12:20 我要评论( )

分享4种input元素滑块UI样式是一款使用CSS3来渲染样式,使用JavaScript来处理滑块的鼠标拖动事件。效果图如下: 在线预览源码下载 实现的代码。 js代码: var range_els = document.querySelectorAll('input[type=range]'), n = range_els.length, style_el

分享4种input元素滑块UI样式是一款使用CSS3来渲染样式,使用JavaScript来处理滑块的鼠标拖动事件。效果图如下:

在线预览    源码下载

实现的代码。

js代码:

var range_els = document.querySelectorAll('input[type=range]'), n = range_els.length, style_el = document.createElement('style'), styles = [], track_sel = [ '::-moz-range-track', '::-webkit-slider-runnable-track', ' /deep/ #track' ], thumb_sel = [ '::-webkit-slider-thumb', ' /deep/ #thumb' ], a = ':after', b = ':before', s = [ '', '%', '%' ]; document.body.appendChild(style_el); for (var i = 0; i < n; i++) { if (window.CP.shouldStopExecution(1)) { break; } styles.push(''); range_els[i].addEventListener('input', function () { var idx || 100, c_style, u, edge_w, val; this.setAttribute('value', this.value); if (this.classList.contains('tip')) { str += base_sel + thumb_sel[0] + a + ',' + base_sel + thumb_sel[1] + a + '{content:"' + this.value + s[idx] + '"}'; } if (this.classList.contains('fill')) { if (idx == 0) { c_style = getComputedStyle(this); u = c_style.backgroundSize.split(' ')[0].split('px')[0]; edge_w = (c_style.width.split('px')[0] - u * (max - min)) / 2; val = (this.value - min) * u + edge_w + 'px'; } else { val = this.value + '%'; } if (this.classList.contains('fill-replace')) { str += base_sel + track_sel[0] + '{background-size:' + val + '}'; } str += base_sel + track_sel[1] + a + ',' + base_sel + track_sel[2] + a + '{width:' + val + '}'; } styles[idx] = str; style_el.textContent = styles.join(''); }, false); } window.CP.exitedLoop(1);

via:

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 自定义input默认placeholder样式 - 小碎步

    自定义input默认placeholder样式 - 小碎步

    2017-04-20 13:00

  • input输入框校验,字母,汉字,数字等 - 张宇凡20

    input输入框校验,字母,汉字,数字等 - 张宇凡20

    2017-03-30 09:01

  • HTML5 元素属性介绍 - polk6

    HTML5 元素属性介绍 - polk6

    2017-03-28 10:01

  • HTML 元素和有效 DOCTYPES - 大西瓜2号

    HTML 元素和有效 DOCTYPES - 大西瓜2号

    2017-03-09 16:00

网友点评