Skip to content

narutowyh/multiSlter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

移动端模拟select的控件

依赖 iscroll[-lite]、Zepto
注册全局对象:window.MultiSlter

简单实例

new MultiSlter({
    openSlter : "#slter",
    datas : [
        [{htmlData:"1",value:1}, {htmlData:"2",value:2}, {htmlData:"3",value:3}, {htmlData:"4",value:4}]
    ]
            
});

截图

可选参数

参数名 参数类型 参数意义
datas [{htmlData:"1"}, {htmlData:"2"}] select内的option数据
separator string 连接符
sltedClassName string 被选中liclassName
cancleTip string 最顶部li节点的内容
slideDownInterval int 组件关闭时下滑动画时长。默认为0,无下滑动画
autoScrollInterval int 打开组件时,滚到已选li节点的动画时长

可选回调

回调函数名称 参数 意义 return
cancleCallback (sltedLiAry, slterObj),sltedLiAry: 被选中的li组成的DOM数组;slterObj: MultiSlter对象 点击取消时执行 --
confirmCallback (sltedLiAry, slterObj),sltedLiAry: 被选中的li组成的DOM数组;slterObj: MultiSlter对象 点击确认时执行 {autoInster : false, autoHide : true }
liTapCallback (thisLiNode, ulItem, sltedAry, scroller, allScrollers),thisLiNode : 点击的DOM对象,ulItem : 此li所在的ul DOM对象,sltedAry : 当前选中的所有li对象数组,scroller : MultiSlter对象,allScrollers : 当前下拉控件的所有slroller组成的数组 tap li时执行 false:阻止默认选中li元素的操作

模拟placeholder

  • @openSlter节点添加data-holder属性,组件会自动模拟placeholder,当@openSlter节点上没有data-holder字段时,会将其innerHTML字段作为placeholder进行模拟:
<span class="multislter-holder" id="houseTypeSlter" data-holder="请选择您的户型">请选择</span>

实例方法

方法名 作用
show 显示控件
hide 隐藏控件

静态方法:window.MultiSlter.getSlterData(from, to, pre, after, subk, subv)

window.MultiSlter.getSlterData方法用于方便地生成用于初始化MultiSlter对象的datas数据。此方法生成的数据是连续的。例如执行MultiSlter.getSlterData(1, 3, "共", "天", "name", "date")将会得到:

[
    {htmlData:"共1天","value":1,"name":"date"},
    {htmlData:"共2天","value":2,"name":"date"},
    {htmlData:"共3天","value":3,"name":"date"}
]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published