- Framework7 教程
- Framework7 - 首页
- Framework7 - 概述
- Framework7 - 环境
- Framework7 组件
- Framework7 - 布局
- Framework7 - 导航栏
- Framework7 - 工具栏
- Framework7 - 搜索栏
- Framework7 - 状态栏
- Framework7 - 侧边栏
- Framework7 - 内容块
- Framework7 - 布局网格
- Framework7 - 覆盖层
- Framework7 - 加载动画
- Framework7 - 进度条
- Framework7 - 列表视图
- Framework7 - 手风琴
- Framework7 - 卡片
- Framework7 - 芯片
- Framework7 - 按钮
- Framework7 - 操作按钮
- Framework7 - 表单
- Framework7 - 标签页
- Framework7 - Swiper 滑块
- Framework7 - 照片浏览器
- Framework7 - 自动完成
- Framework7 - 选择器
- Framework7 - 日历
- Framework7 - 刷新
- Framework7 - 无限滚动
- Framework7 - 消息
- Framework7 - 消息栏
- Framework7 - 通知
- Framework7 - 延迟加载
- Framework7 样式
- Framework7 - 颜色主题
- Framework7 - 分割线
- Framework7 模板
- Framework7 - 模板概述
- Framework7 - 自动编译
- Framework7 - Template7 页面
- Framework7 快速点击
- Framework7 - 活动状态
- Framework7 - 长按事件
- Framework7 - 触摸水波纹
- Framework7 有用资源
- Framework7 - 快速指南
- Framework7 - 有用资源
- Framework7 - 讨论
Framework7 - 选择器
描述
选择器看起来像 iOS 原生选择器,它是一个功能强大的组件,允许您从列表中选择任何值,也可用于创建自定义覆盖层选择器。您可以将选择器用作内联组件或覆盖层。覆盖层选择器将在平板电脑(iPad)上自动转换为弹出窗口。
使用以下 App 的方法,您可以创建并初始化 JavaScript 方法 -
myApp.picker(parameters)
其中参数是必需的对象,用于初始化选择器实例,并且它是一个必需的方法。
选择器参数
下表指定了选择器中可用的参数 -
序号 | 参数 & 描述 | 类型 | 默认值 |
---|---|---|---|
1 | container 用于为内联选择器生成选择器 HTML 的 CSS 选择器字符串或 HTMLElement。 |
字符串或 HTMLElement | - |
2 | input 使用 CSS 选择器字符串或 HTMLElement 放在一起的相关输入元素。 |
字符串或 HTMLElement | - |
3 | scrollToInput 每当选择器打开时,它用于滚动输入的视口(页面内容)。 |
布尔值 | true |
4 | inputReadOnly 用于在指定的输入上设置“只读”属性。 |
布尔值 | true |
5 | convertToPopover 它用于在 iPad 等大屏幕上将选择器模态转换为弹出窗口。 |
布尔值 | true |
6 | onlyOnPopover 您可以通过启用它在弹出窗口中打开选择器。 |
布尔值 | true |
7 | cssClass 对于选择器模态,您可以使用其他 CSS 类名。 |
字符串 | - |
8 | closeByOutsideClick 您可以通过启用该方法,通过点击选择器或输入元素外部来关闭选择器。 |
布尔值 | false |
9 | toolbar 它用于启用选择器模态工具栏。 |
布尔值 | true |
10 | toolbarCloseText 用于“完成/关闭”工具栏按钮。 |
字符串 | 'Done' |
11 | toolbarTemplate 它是工具栏 HTML 模板,默认情况下它是带有以下模板的 HTML 字符串 - <div class = "toolbar"> <div class = "toolbar-inner"> <div class = "left"></div> <div class = "right"> <a href = "#" class = "link close-picker"> {{closeText}} </a> </div> </div> </div> |
字符串 | - |
特定选择器参数
下表列出了可用的特定选择器参数 -
序号 | 参数 & 描述 | 类型 | 默认值 |
---|---|---|---|
1 | rotateEffect 它在选择器中启用 3D 旋转效果。 |
布尔值 | false |
2 | momentumRatio 当您在快速触摸和移动后释放选择器时,它会产生更多的动量。 |
数字 | 7 |
3 | updateValuesOnMomentum 用于在动量期间更新选择器和输入值。 |
布尔值 | false |
4 | updateValuesOnTouchmove 用于在触摸移动期间更新选择器和输入值。 |
布尔值 | true |
5 | value 该数组具有其初始值,并且每个数组项都表示相关列的值。 |
数组 | - |
6 | formatValue 该函数用于格式化输入值,它应该返回新的/格式化的字符串值。值和显示值是相关列的数组。 |
function (p, values, displayValues) | - |
7 | cols 每个数组项都表示一个带有列参数的对象。 |
数组 | - |
选择器参数回调
下表显示了选择器中可用的回调函数列表 -
序号 | 回调 & 描述 | 类型 | 默认值 |
---|---|---|---|
1 | onChange 每当选择器值更改时,回调函数将被执行,并且值和显示值是相关列的数组。 |
function (p, values, displayValues) | - |
2 | onOpen 每当选择器打开时,回调函数将被执行。 |
function (p) | - |
3 | onClose 每当选择器关闭时,回调函数将被执行。 |
function (p) | - |
列参数
在配置选择器时,我们需要传递cols参数。它表示为数组,其中每个项目都是带有列参数的对象 -
序号 | 参数 & 描述 | 类型 | 默认值 |
---|---|---|---|
1 | values 您可以使用数组指定字符串列值。 |
数组 | - |
2 | displayValues 它包含带有字符串列值的数组,它将显示来自values参数的值,当它未指定时。 |
数组 | - |
3 | cssClass 用于在列 HTML 容器上设置的CSS 类名称。 |
字符串 | - |
4 | textAlign 它用于设置列值的文本对齐方式,可以是“left”,“center”或“right”。 |
字符串 | - |
5 | width 默认情况下,宽度会自动计算。如果您需要在具有依赖列的选择器中修复列宽度,则应以px为单位。 |
数字 | - |
6 | divider 它用于应为视觉分隔符的列,它没有任何值。 |
布尔值 | false |
7 | content 它用于使用列的内容指定分隔符列(divider:true)。 |
字符串 | - |
列回调参数
序号 | 回调 & 描述 | 类型 | 默认值 |
---|---|---|---|
1 | onChange 每当列值发生变化时,回调函数都会执行。value 和 displayValue分别表示当前列的value 和 displayValue。 |
function (p, value, displayValue) | - |
选择器属性
Picker 变量有很多属性,如下表所示 -
序号 | 属性 & 描述 |
---|---|
1 | myPicker.params 您可以使用对象初始化传递的参数。 |
2 | myPicker.value 每列的选择值由项目数组表示。 |
3 | myPicker.displayValue 每列的选择显示值由项目数组表示。 |
4 | myPicker.opened 当选择器打开时,它设置为true值。 |
5 | myPicker.inline 当选择器为内联时,它设置为true值。 |
6 | myPicker.cols 选择器列具有其自身的方法和属性。 |
7 | myPicker.container Dom7 实例用于 HTML 容器。 |
选择器方法
选择器变量有一些有用的方法,如下表所示 -
序号 | 方法 & 描述 |
---|---|
1 | myPicker.setValue(values, duration) 用于设置新的选择器值。值位于数组中,其中每个项目都表示每列的value。duration - 它是以毫秒为单位的过渡持续时间。 |
2 | myPicker.open() 用于打开选择器。 |
3 | myPicker.close() 用于关闭选择器。 |
4 | myPicker.destroy() 用于销毁选择器实例并删除所有事件。 |
列属性
myPicker.cols数组中的每个列也具有其自身的有用属性,如下表所示 -
//Get first column var col = myPicker.cols[0];
序号 | 属性 & 描述 |
---|---|
1 | col.container 您可以使用列 HTML 容器创建一个实例。 |
2 | col.items 您可以使用列项目 HTML 元素创建一个实例。 |
3 | col.value 用于选择当前列的值。 |
4 | col.displayValue 用于选择当前列的显示值。 |
5 | col.activeIndex 给出当前索引号,即选定的/活动的项目。 |
列方法
有用的列方法如下表所示 -
序号 | 方法 & 描述 |
---|---|
1 | col.setValue(value, duration) 用于为当前列设置新值。value必须是新值,duration是以毫秒为单位的过渡持续时间。 |
2 | col.replaceValues(values, displayValues) 用于将列值和显示值替换为新的值。 |
每当您将选择器初始化为内联选择器时,它用于从其 HTML 容器访问选择器的实例。
var myPicker = $$('.picker-inline')[0].f7Picker;
选择器有不同类型,如下表所示 -
序号 | 选项卡类型 & 描述 |
---|---|
1 | 带单个值的选择器
它是一个功能强大的组件,允许您从列表中选择任何值。 |
2 | 两个值和 3D 旋转效果
在选择器中,您可以使用 3D 旋转效果。 |
3 | 依赖值
值取决于指定元素的彼此。 |
4 | 自定义工具栏
您可以在单个页面上使用一个或多个选择器进行自定义。 |
5 | 内联选择器 / 日期时间
您可以在内联选择器中选择多个值。例如,日期有日期、月份、年份,时间有小时、分钟、秒。 |