Sortable Widgetversion added: 1.0
Description: 使用鼠标调整列表中或者网格中元素的排序。
jQuery UI 可排序(Sortable)插件让被被选择的元素通过鼠标拖拽进行排序。
注意:为了排序表格中的行,tbody
元素必须作为sortable(可排序元素),而不是在table
。
Dependencies
Options
appendToType: jQuery or Element or Selector or String
"parent"
- jQuery: 一个 jQuery 对象,包含辅助(helper)元素要追加到的元素。
- Element: 要被追加辅助(helper)元素的元素。
- Selector: 一个选择器,指定哪个元素要追加辅助(helper)元素。
-
String:字符串
"parent"
将促使助手(helper)成为 sortable 项目的同级。
使用指定的 appendTo
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 appendTo
参数:
1
2
3
4
5
6
|
|
axisType: String
false
"x"
, "y"
。使用指定的 axis
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 axis
参数:
1
2
3
4
5
6
|
|
cancelType: Selector
"input,textarea,button,select,option"
使用指定的 cancel
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 cancel
参数:
1
2
3
4
5
6
|
|
connectWithType: Selector
false
connectWith
选项。
使用指定的 connectWith
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 connectWith
参数:
1
2
3
4
5
6
|
|
containmentType: Element or Selector or String
false
定义一个边界,限制拖动范围在指定的DOM元素内。
注意:为限制拖动范围,指定的元素必须有一个可计算的宽度和高度(但不一定是显式的)。例如,如果你的sortable元素的子元素有float: left
样式,并且指定containment: "parent"
,那么sortable/parent容器必须要有float: left
样式,或者他将有height: 0
样式,导致不确定的行为。
- Element: 一个用来作为容器的元素。
- Selector:一个选择器指定的元素,这个元素用来作为容器
-
String: 一个字符串指定的元素,这个元素用来作为容器。可能的值:
"parent"
,"document"
,"window"
。
使用指定的 containment
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 containment
参数:
1
2
3
4
5
6
|
|
cursorType: String
"auto"
使用指定的 cursor
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 cursor
参数:
1
2
3
4
5
6
|
|
cursorAtType: Object
false
{ top, left, right, bottom }
。使用指定的 cursorAt
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 cursorAt
参数:
1
2
3
4
5
6
|
|
delayType: Integer
0
使用指定的 delay
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 delay
参数:
1
2
3
4
5
6
|
|
disabledType: Boolean
false
true
,将禁用sortable。使用指定的 disabled
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 disabled
参数:
1
2
3
4
5
6
|
|
distanceType: Number
1
使用指定的 distance
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 distance
参数:
1
2
3
4
5
6
|
|
dropOnEmptyType: Boolean
true
false
,这个sortable中项不能拖动到一个空的sortable中。(查看connectWith
选项.使用指定的 dropOnEmpty
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 dropOnEmpty
参数:
1
2
3
4
5
6
|
|
forceHelperSizeType: Boolean
false
true
, 强迫辅助元素(helper)有一个尺寸大小。使用指定的 forceHelperSize
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 forceHelperSize
参数:
1
2
3
4
5
6
|
|
forcePlaceholderSizeType: Boolean
false
true
, 强迫占位符(placeholder)有一个尺寸大小。使用指定的 forcePlaceholderSize
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 forcePlaceholderSize
参数:
1
2
3
4
5
6
|
|
gridType: Array
false
[ x, y ]
。使用指定的 grid
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 grid
参数:
1
2
3
4
5
6
|
|
handleType: Selector or Element
false
使用指定的 handle
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 handle
参数:
1
2
3
4
5
6
|
|
helperType: String or Function()
"original"
-
String:如果设置为
"clone"
,那么这个元素将被克隆,并且克隆出来的元素将被拖动。 - Function: 一个函数,将返回拖拽时要使用的 DOMElement。函数接收事件,且元素正被排序。
使用指定的 helper
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 helper
参数:
1
2
3
4
5
6
|
|
itemsType: Selector
"> *"
使用指定的 items
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 items
参数:
1
2
3
4
5
6
|
|
opacityType: Number
false
0.01
到 1
。使用指定的 opacity
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 opacity
参数:
1
2
3
4
5
6
|
|
placeholderType: String
false
使用指定的 placeholder
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 placeholder
参数:
1
2
3
4
5
6
|
|
revertType: Boolean or Number
false
-
Boolean:当设置为
true
,该项目将会使用动画,动画使用默认的持续时间。 - Number: 动画的持续时间,以毫秒计。
使用指定的 revert
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 revert
参数:
1
2
3
4
5
6
|
|
scrollType: Boolean
true
true
,当到达边缘时页面会滚动。使用指定的 scroll
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 scroll
参数:
1
2
3
4
5
6
|
|
scrollSensitivityType: Number
20
使用指定的 scrollSensitivity
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 scrollSensitivity
参数:
1
2
3
4
5
6
|
|
scrollSpeedType: Number
20
scrollSensitivity
距离内时,窗体滚动的速度。如果 scroll 选项是 false 则忽略。使用指定的 scrollSpeed
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 scrollSpeed
参数:
1
2
3
4
5
6
|
|
toleranceType: String
"intersect"
"intersect"
:项目至少 50% 重叠在其他项目上。"pointer"
:鼠标指针重叠在其他项目上。
使用指定的 tolerance
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 tolerance
参数:
1
2
3
4
5
6
|
|
zIndexType: Integer
1000
使用指定的 zIndex
参数初始化 sortable :
1
|
|
在初始化后设置或者获取 zIndex
参数:
1
2
3
4
5
6
|
|
Methods
cancel()
- 该方法不接受任何参数。
调用 cancel 方法:
1
|
|
destroy()
- 该方法不接受任何参数。
调用 destroy 方法:
1
|
|
disable()
- 该方法不接受任何参数。
调用 disable 方法:
1
|
|
enable()
- 该方法不接受任何参数。
调用 enable 方法:
1
|
|
option( optionName )Returns: Object
optionName
关联的值。-
optionNameType: String要获取值的选项的名称。
调用该方法:
1
|
|
option()Returns: PlainObject
- 该方法不接受任何参数。
调用该方法:
1
|
|
option( optionName, value )
optionName
关联的 sortable 选项的值。调用该方法:
1
|
|
option( options )
-
optionsType: Object要设置的 option-value 对。
调用该方法:
1
|
|
refresh()
- 该方法不接受任何参数。
调用 refresh 方法:
1
|
|
refreshPositions()
- 该方法不接受任何参数。
调用 refreshPositions 方法:
1
|
|
serialize( options )Returns: String
序列化 sortable 的项目 id
为一个 form/ajax 可提交的字符串。调用该方法会产生一个可被追加到任何 url 中的哈希,以便简单地把一个新的项目顺序提交回服务器。
默认情况下,它通过每个项目的 id
进行工作,id 格式为 "setname_number"
,且它会产生一个形如 "setname[]=number&setname[]=number"
的哈希。
注释:如果序列化返回一个空的字符串,请确认 id
属性包含一个下划线(_)。形式必须是 "set_number"
。例如,一个 id
属性为 "foo_1"
、"foo_5"
、"foo_2"
的 3 元素列表将序列化为 "foo[]=1&foo[]=5&foo[]=2"
。您可以使用下划线(_)、等号(=)或连字符(-)来分隔集合和数字。例如,"foo=1"
、"foo-1"
、"foo_1"
所有都序列化为 "foo[]=1"
。
-
optionsType: Object要自定义序列化的选项。
- key(默认值:
属性中分隔符前面的部分
)
类型:String
描述:把part1[]
替换为指定的值。 - attribute(默认值:
"id"
)
类型:String
描述:值要使用的属性名称。 - expression(默认值:
/(.+)[-=_](.+)/
)
类型:RegExp
描述:用于把属性值分隔为键和值两部分的正则表达式。
- key(默认值:
调用 serialize 方法:
1
|
|
widget()Returns: jQuery
jQuery
对象。
- 该方法不接受任何参数。
调用 widget 方法:
1
|
|
Events
activate( event, ui )Type: sortactivate
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 activate 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortactivate 事件:
1
|
|
beforeStop( event, ui )Type: sortbeforestop
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 beforeStop 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortbeforestop 事件:
1
|
|
change( event, ui )Type: sortchange
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 change 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortchange 事件:
1
|
|
create( event, ui )Type: sortcreate
注意:ui
对象是空的,这里包含它是为了与其他事件保持一致性。
使用指定的 create 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortcreate 事件:
1
|
|
deactivate( event, ui )Type: sortdeactivate
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 deactivate 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortdeactivate 事件:
1
|
|
out( event, ui )Type: sortout
当一个 sortable 项目从一个 sortable 列表移除时触发该事件。
Note: 当一个 sortable 项目被撤销时也会触发该事件。
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 out 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortout 事件:
1
|
|
over( event, ui )Type: sortover
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 over 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortover 事件:
1
|
|
receive( event, ui )Type: sortreceive
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 receive 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortreceive 事件:
1
|
|
remove( event, ui )Type: sortremove
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 remove 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortremove 事件:
1
|
|
sort( event, ui )Type: sort
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 sort 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sort 事件:
1
|
|
start( event, ui )Type: sortstart
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 start 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortstart 事件:
1
|
|
stop( event, ui )Type: sortstop
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 stop 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortstop 事件:
1
|
|
update( event, ui )Type: sortupdate
-
eventType: Event
-
uiType: Object
-
helperType: jQueryjQuery 对象,表示被排序的助手(helper)。
-
itemType: jQueryjQuery 对象,表示当前被拖拽的元素。
-
offsetType: Object助手(helper)的当前的绝对位置,表示为
{ top, left }
。 -
positionType: Object助手(helper)的当前位置,表示为
{ top, left }
. -
originalPositionType: Object元素的原始位置,表示为
{ top, left }
. -
senderType: jQuery如果从一个 sortable 移动到另一个 sortable,项目来自的那个
-
placeholderType: jQueryjQuery 对象,表示被作为占位符使用的元素。
-
使用指定的 update 回调的 sortable:
1
2
3
|
|
绑定一个事件监听器到 sortupdate 事件:
1
|
|
Example:
A simple jQuery UI Sortable.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
|