·概述 Selectable插件允许用户对指定的元素进行选中的动作。此外还支持按住Ctrl键单击或拖拽选择多个元素。 官方示例地址:http://jqueryui.com/demos/selectable/ ·参数(参数名 : 参数类型 : 默认值) autoRefresh : Boolean : true 决定是否在每次选择动作时,都重新计算每个选中元素的坐标和大小。如果你有很多个选择项的话,建议设置成false并通过方法手动刷新。 初始:$('.selector').selectable({ autoRefresh: false }); 获取:var autoRefresh = $('.selector').selectable('option', 'autoRefresh'); 设置:$('.selector').selectable('option', 'autoRefresh', false); autoRefresh : Boolean : true 决定是否在每次选择动作时,都重新计算每个选中元素的坐标和大小。如果你有很多个选择项的话,建议设置成false并通过方法手动刷新。 初始:$('.selector').selectable({ autoRefresh: false }); 获取:var autoRefresh = $('.selector').selectable('option', 'autoRefresh'); 设置:$('.selector').selectable('option', 'autoRefresh', false); cancel : Selector : ':input,option' 防止在与选择器相匹配的元素上发生选择动作。 初始:$('.selector').selectable({ cancel: ':input,option' }); 获取:var cancel = $('.selector').selectable('option', 'cancel'); 设置:$('.selector').selectable('option', 'cancel', ':input,option'); delay : Integer : 0 以毫秒为单位,设置延迟多久才激活选择动作。此参数可防止误点击。 初始:$('.selector').selectable({ delay: 20 }); 获取:var delay = $('.selector').selectable('option', 'delay'); 设置:$('.selector').selectable('option', 'delay', 20); distance : Integer : 0 决定至少要在元素上面拖动多少像素后,才正式触发选中的动作。 初始:$('.selector').selectable({ distance: 20 }); 获取:var distance = $('.selector').selectable('option', 'distance'); 设置:$('.selector').selectable('option', 'distance', 20); filter : Selector : '*' 设置哪些子元素才可以被选中。 初始:$('.selector').selectable({ filter: 'li' }); 获取:var filter = $('.selector').selectable('option', 'filter'); 设置:$('.selector').selectable('option', 'filter', 'li'); tolerance : String : 'touch' 可选值:'touch', 'fit',分别代表完全和部署覆盖元素即触发选中动作。 初始:$('.selector').selectable({ tolerance: 'fit' }); 获取:var tolerance = $('.selector').selectable('option', 'tolerance'); 设置:$('.selector').selectable('option', 'tolerance', 'fit'); ·事件 selected 当选中某一个元素后触发此事件。 初始:$('.selector').selectable({ selected: function(event, ui) { ... } }); 绑定:$('.selector').bind('selected', function(event, ui) { ... }); selecting 当选中某一个元素时触发此事件。 初始:$('.selector').selectable({ selecting: function(event, ui) { ... } }); 绑定:$('.selector').bind('selecting', function(event, ui) { ... }); start 当开始准备要选中一个元素时触发此事件。 初始:$('.selector').selectable({ start: function(event, ui) { ... } }); 绑定:$('.selector').bind('selectablestart', function(event, ui) { ... }); stop 当已经结束选中一个元素时触发此事件。 初始:$('.selector').selectable({ stop: function(event, ui) { ... } }); 绑定:$('.selector').bind('selectablestop', function(event, ui) { ... }); unselected 当取消选中某一个元素后触发此事件。 初始:$('.selector').selectable({ unselected: function(event, ui) { ... } }); 绑定:$('.selector').bind('unselected', function(event, ui) { ... }); unselecting 当取消选中某一个元素后触发此事件。 初始:$('.selector').selectable({ unselecting: function(event, ui) { ... } }); 绑定:$('.selector').bind('unselecting', function(event, ui) { ... }); ·方法 destory 从元素中移除拖拽功能。 用法:.droppable( 'destroy' ) disable 禁用元素的拖拽功能。 用法:.droppable( 'disable' ) enable 启用元素的拖拽功能。 用法:.droppable( 'enable' ) option 获取或设置元素的参数。 用法:.droppable( 'option' , optionName , [value] ) refresh 用于手动刷新、重新计算每个选中元素的位置和大小。当autoRefresh设置成false,此方法对于刷新大量选中项非常有用。 用法:.selectable( 'refresh' )