搜索组件模块
grid 栅格布局
layout admin 布局
color 颜色
iconfont 字体图标
font 字体大小 颜色
animation 动画
button 按钮
form 表单组
input 输入框
select 下拉选择框
checkbox 复选框
switch 开关
radio 单选框
textarea 文本域
nav 导航菜单
menu 基础通用菜单
breadcrumb 面包屑
tabs 选项卡
progress 进度条
panel 面板 / card
collapse 折叠面板/手风琴
table 表格元素
badge 徽章
timeline 时间线
blockquote 引用块
fieldset 字段集
hr 分割线
layer 弹出层/弹窗综合
laydate 日期时间选择器
laypage 分页
laytpl 模板引擎
table 数据表格
form 表单模块
upload 文件/图片上传
dropdown 下拉菜单
contextmenu 右键菜单
transfer 穿梭框
tree 树形菜单
colorpicker 颜色选择器
element 常用元素操作
slider 滑块
rate 评分
carousel 轮播/跑马灯
layedit 富文本编辑器
flow 信息流/图片懒加载
util 工具集
code 代码文本行修饰
layim
layuiadmin
-

滑块文档 - layui.slider

作为一个拖拽式的交互性组件,滑块往往能给产品带来更好的操作体验。layui 深以为然,slider 模块包含了你能想到的大部分功能,尽管它可以作为一个独立的个体,但很多时候它往往会出现 form 元素中,想象一下吧。
模块加载名称:slider

注意:slider 为 layui 2.4.0 新增模块

使用

通过对 slider 模块的使用,你可以在页面构建出可拖动的滑动元素,如下是一个最基本的用法:

小例子code

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>滑块</title>
  6. <link rel="stylesheet" href="../src/css/layui.css">
  7. </head>
  8. <body>
  9. <div id="slideTest1"></div>
  10. <script src="../src/layui.js"></script>
  11. <script>
  12. layui.use('slider', function(){
  13. var slider = layui.slider;
  14. //渲染
  15. slider.render({
  16. elem: '#slideTest1' //绑定元素
  17. });
  18. });
  19. </script>
  20. </body>
  21. </html>
基础参数

slider 组件支持以下参数

参数选项 说明 类型 默认值
elem 指向容器选择器 string/object -
type 滑块类型,可选值有:default(水平滑块)、vertical(垂直滑块) string default
min 滑动条最小值,正整数,默认为 0 number 0
max 滑动条最大值 number 100
range 是否开启滑块的范围拖拽,若设为 true,则滑块将出现两个可拖拽的环 boolean false
value 滑块初始值,默认为数字,若开启了滑块为范围拖拽(即 range: true),则需赋值数组,异表示开始和结尾的区间,如:value: [30, 60] number/Array 0
step 拖动的步长 number 1
showstep 是否显示间断点 boolean false
tips 是否显示文字提示 boolean true
input 是否显示输入框(注意:若 range 参数为 true 则强制无效)
点击输入框的上下按钮,以及输入任意数字后回车或失去焦点,均可动态改变滑块
boolean false
height 滑动条高度,需配合 type:"vertical" 参数使用 number 200
disabled 是否将滑块禁用拖拽 boolean false
theme 主题颜色,以便用在不同的主题风格下 string #009688
自定义提示文本

当鼠标放在圆点和滑块拖拽时均会触发提示层。其默认显示的文本是它的对应数值,你也可以自定义提示内容:

例子code

  1. slider.render({
  2. elem: '#slideTest1'
  3. ,setTips: function(value){ //自定义提示文本
  4. return value + '%';
  5. }
  6. });
数值改变的回调

在滑块数值被改变时触发。该回调非常重要,可动态获得滑块当前的数值。你可以将得到的数值,赋值给隐藏域,或者进行一些其它操作。

小例子code

  1. //当滑块为普通模式,回调返回的 value 是一个数值
  2. slider.render({
  3. elem: '#slideTest1'
  4. ,change: function(value){
  5. console.log(value) //动态获取滑块数值
  6. //do something
  7. }
  8. });
  9. //当滑块为范围模式,回调返回的 value 是一个数组,包含开始和结尾
  10. slider.render({
  11. elem: '#slideTest1'
  12. ,range: true
  13. ,change: function(value){
  14. console.log(value[0]) //得到开始值
  15. console.log(value[1]) //得到结尾值
  16. //do something
  17. }
  18. });
实例方法

执行 slider 实例时,会返回一个当前实例的对象,里面包含针对当前实例的方法和属性。
语法:var ins1 = slider.render(options);

实例方法和属性code

  1. var ins1 = slider.render(options); //获得实例对象
  2. ins1.config //获得当前实例的配置项
  3. ins1.setValue(nums); //动态给滑块赋值
动态改变滑块数值

你可以通过外部方法动态改变滑块数值,如:

</>code

  1. var ins1 = slider.render({
  2. elem: '#test1'
  3. //…
  4. });
  5. //改变指定滑块实例的数值
  6. ins1.setValue(20)
  7. //若滑块开启了范围(range: true)
  8. ins1.setValue(20, 0) //设置开始值
  9. ins1.setValue(60, 1) //设置结尾值
结语

layui.slider 可以大幅度提升你 Web 应用中的很多操作体验,可尽情发挥。

layui - 在每一个细节中,用心与你沟通