You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
layui/docs/dropdown/detail/options.md

323 lines
5.0 KiB

2 years ago
<table class="layui-table">
<colgroup>
<col width="150">
<col>
<col width="100">
<col width="100">
</colgroup>
<thead>
<tr>
<th>属性名</th>
<th>描述</th>
<th>类型</th>
<th>默认值</th>
</tr>
</thead>
<tbody>
<tr>
<td>elem</td>
<td>
绑定元素选择器或 DOM 对象
</td>
<td>string/DOM</td>
<td>-</td>
</tr>
<tr>
<td>
[data](#options.data)
</td>
<td>
下拉菜单的数据源。格式详见:[#data 格式](#options.data)
</td>
<td>array</td>
<td>-</td>
</tr>
<tr>
<td>id</td>
<td>
设定实例唯一索引,以便用于其他方法对例进行相关操作。若该属性未设置,则默认从 `elem` 属性绑定的元素中的 `id` 属性值中获取。
</td>
<td>string</td>
2 years ago
<td>-</td>
</tr>
<tr>
<td>trigger</td>
<td>
触发组件的事件类型。支持所有事件,如: `click,hover,mousedown,contextmenu`
</td>
<td>string</td>
<td>
`click`
</td>
</tr>
<tr>
<td>show</td>
<td>
是否渲染即显示组件面板。该属性一般在重载方法中传递。
</td>
<td>boolean</td>
<td>
`false`
</td>
</tr>
<tr>
<td>align</td>
<td>
下拉面板相对绑定元素的水平对齐方式。支持以下可选值:
- `left` 左对齐(默认)
- `center` 居中对齐
- `right` 右对齐
</td>
<td>string</td>
<td>
`left`
</td>
</tr>
<tr>
<td>isAllowSpread</td>
<td>
是否允许菜单组展开收缩
</td>
<td>boolean</td>
<td>
`true`
</td>
</tr>
<tr>
<td>isSpreadItem</td>
<td>
是否初始展开子菜单
</td>
<td>boolean</td>
<td>
`true`
</td>
</tr>
<tr>
<td>accordion <sup>2.8.18+</sup></td>
<td>
是否开启手风琴效果
</td>
<td>boolean</td>
<td>
`false`
2 years ago
</td>
</tr>
<tr>
<td>delay</td>
<td>
延迟触发的毫秒数。当 `trigger: 'hover'` 时才生效。示例:
- `delay: 300` : 表示显示与隐藏的延迟时间均为 300 毫秒
- `delay: [200, 300]` <sup>2.9.2+</sup> : 数组成员值分别表示显示延迟时间和隐藏延迟时间
2 years ago
</td>
<td>number/array</td>
2 years ago
<td>
`[200, 300]`
2 years ago
</td>
</tr>
<tr>
<td>className</td>
<td>
自定义组件主容器的样式类名,从而在外部重新定义样式。
</td>
<td>string</td>
<td>-</td>
</tr>
<tr>
<td>style</td>
<td>
设置组件主容器的 `CSS` 样式。
</td>
<td>string</td>
<td>-</td>
</tr>
<tr>
<td>shade <sup>2.8+</sup></td>
<td>
设置弹出时的遮罩。支持以下方式赋值:
- 若值为 `number` 类型,则表示为遮罩透明度,如:
<br>`shade: 0.3`
- 若值为 `array` 类型,则可同时设置透明度和背景色,如:
<br>`shade: [0.3, '#000']`
</td>
<td>number<br>array</td>
<td>
`0`
</td>
</tr>
<tr>
<td>templet</td>
<td>
全局定义菜单的列表模板,可添加任意 `html` 字符,且支持 [laytpl](../laytpl/) 模板语法。用法详见:[#示例](#demo-complex)
<sup>2.8+</sup> : 模板亦可采用函数写法:
```
templet: function(d){
return '<i class="layui-icon layui-icon-tips"></> ' + d.title;
}
```
</td>
<td>string<br>function</td>
<td>-</td>
</tr>
<tr>
<td>content</td>
<td>
自定义组件内容,从而替代默认的菜单结构。用法详见:[#示例](#demo-content)
</td>
<td>string</td>
<td>-</td>
</tr>
<tr>
<td>clickScope <sup>2.8+</sup></td>
<td>
设置触发点击事件的菜单范围。 支持以下可选值:
- `all` : 即代表父子菜单均可触发事件
默认无需设置,即父级菜单不触发事件
</td>
<td>string</td>
<td>-</td>
</tr>
<tr>
<td>
[customName](#options.customName) <sup>2.8.14+</sup>
</td>
<td>
自定义 `data` 数据源中常用的字段名称。
</td>
<td>object</td>
2 years ago
<td>-</td>
</tr>
<tr>
<td colspan="4" style="text-align: center">
<div id="options.callback" lay-pid="options" class="ws-anchor">
2 years ago
[回调函数](#options.callback)
</div>
</td>
</tr>
<tr>
<td>ready</td>
<td colspan="3">
组件成功弹出后的回调函数。返回的参数如下:
```
ready: function(elemPanel, elem){
console.log(elemPanel); // 组件面板元素对象
console.log(elem); // 当前组件绑定的目标元素对象
}
```
</td>
</tr>
<tr>
<td>
[click](#options.click)
</td>
<td colspan="3">
<div id="options.click" lay-pid="options" class="ws-anchor">
2 years ago
菜单项被点击时的回调函数。返回的参数如下:
</div>
```
click: function(data, othis){
console.log(data); // 当前所点击的菜单项对应的数据
console.log(othis); // 当前所点击的菜单项元素对象
console.log(this.elem); // 当前组件绑定的目标元素对象,批量绑定中常用
// 若返回 false则点击选项可不关闭面板 --- 2.8+
/*
return false;
*/
}
2 years ago
```
用法详见:[#示例](#examples)
</td>
</tr>
<tr>
<td>close <sup>2.9.7+</sup></td>
<td colspan="3">
面板关闭后的回调函数。返回的参数如下:
```
close: function(elem){
console.log(elem); // 当前组件绑定的目标元素对象
}
```
2 years ago
</td>
</tr>
</tbody>
</table>