jQuery UI API - Виджет Selectable
Категория
Использование
Описание:Выбирает отдельные элементы или группу элементов с помощью мыши.
Добавлено в версии:1.0
Зависимости:
Примечания:Плагин Selectable jQuery UI позволяет выбирать элементы перетаскиванием мыши (иногда это называют лассо). Можно щёлкать или перетаскивать, удерживая клавишу ctrl/meta, чтобы выбрать несколько (несмежных) элементов.
Дополнительные примечания:Этот виджет требует определённого функционального CSS, иначе он не будет работать. Если вы создаёте собственную тему, используйте CSS-файл, специфичный для виджета, в качестве отправной точки.
Быстрая навигация
| Параметры | Методы | Events |
|---|---|---|
| Параметры | Type | Описание | Default |
|---|---|---|---|
| appendTo | Селектор | Определяет, к какому элементу следует добавить вспомогательный элемент выделения (лассо). Примеры кода: Инициализировать с указанными
$( ".selector" ).selectable({ appendTo: "#someElem" });
После инициализации получите или задайте // getter var appendTo = $( ".selector" ).selectable( "option", "appendTo" ); // setter $( ".selector" ).selectable( "option", "appendTo", "#someElem" ); |
"body" |
| autoRefresh | Boolean | Эта опция определяет, следует ли обновлять (пересчитывать) положение и размер каждого выделяемого элемента в начале каждой операции выделения. Если у вас много элементов, возможно, вы захотите установить эту опцию в false и вручную вызватьrefresh()метод.Примеры кода: Инициализировать с указанными
$( ".selector" ).selectable({ autoRefresh: false });
После инициализации получите или задайте // getter var autoRefresh = $( ".selector" ).selectable( "option", "autoRefresh" ); // setter $( ".selector" ).selectable( "option", "autoRefresh", false ); |
истина |
| отмена | Селектор | Предотвращает начало выделения на элементах, соответствующих селектору. Примеры кода: Инициализировать с указанными
$( ".selector" ).selectable({ cancel: "a,.cancel" });
После инициализации получите или задайте // getter var cancel = $( ".selector" ).selectable( "option", "cancel" ); // setter $( ".selector" ).selectable( "option", "cancel", "a,.cancel" ); |
"input, textarea, button, select, option" |
| delay | Number | Время в миллисекундах после нажатия кнопки мыши до начала выделения. Эта опция может предотвратить ненужные выделения при щелчке по элементу. Примеры кода: Инициализировать с указанными
$( ".selector" ).selectable({ delay: 150 });
После инициализации получите или задайте // getter var delay = $( ".selector" ).selectable( "option", "delay" ); // setter $( ".selector" ).selectable( "option", "delay", 150 ); |
0 |
| disabled | Boolean | Если установлено значениеtrue, виджет selectable отключен.Примеры кода: Инициализировать с указанными
$( ".selector" ).selectable({ disabled: true });
После инициализации получите или задайте // getter var disabled = $( ".selector" ).selectable( "option", "disabled" ); // setter $( ".selector" ).selectable( "option", "disabled", true ); |
false |
| distance | Number | Расстояние в пикселях, на которое мышь должна переместиться после нажатия кнопки мыши до начала выделения. Если эта опция указана, выделение начинается только тогда, когда мышь перетаскивается на расстояние, превышающее указанное. Эта опция может предотвратить ненужные выделения при щелчке по элементу. Примеры кода: Инициализировать с указанными
$( ".selector" ).selectable({ distance: 30 });
После инициализации получите или задайте // getter var distance = $( ".selector" ).selectable( "option", "distance" ); // setter $( ".selector" ).selectable( "option", "distance", 30 ); |
0 |
| filter | Селектор | Соответствующие дочерние элементы, которые становятся выбираемыми (могут быть выбраны). Примеры кода: Инициализировать с указанными
$( ".selector" ).selectable({ filter: "li" });
После инициализации получите или задайте // getter var filter = $( ".selector" ).selectable( "option", "filter" ); // setter $( ".selector" ).selectable( "option", "filter", "li" ); |
"*" |
| tolerance | String | Задаёт режим, используемый для проверки, выбирает ли лассо элемент. Возможные значения:
Примеры кода: Инициализировать с указанными
$( ".selector" ).selectable({ tolerance: "fit" });
После инициализации получите или задайте // getter var tolerance = $( ".selector" ).selectable( "option", "tolerance" ); // setter $( ".selector" ).selectable( "option", "tolerance", "fit" ); |
"touch" |
| Методы | Возвращает | Описание |
|---|---|---|
| destroy() | jQuery (только плагин) | Полностью удаляет функциональность selectable. Это возвращает элемент в состояние до инициализации.
Примеры кода: Вызовите метод destroy: $( ".selector" ).selectable( "destroy" ); |
| disable() | jQuery (только плагин) | Отключает selectable.
Примеры кода: Вызовите метод disable: $( ".selector" ).selectable( "disable" ); |
| enable() | jQuery (только плагин) | Включает selectable.
Примеры кода: Вызовите метод enable: $( ".selector" ).selectable( "enable" ); |
| option( optionName ) | Object | Возвращает для текущего указанногоoptionNameсвязанное значение.
Примеры кода: Вызовите этот метод: var isDisabled = $( ".selector" ).selectable( "option", "disabled" ); |
| option() | PlainObject | Возвращает объект, содержащий пары ключ/значение, представляющие текущий хеш опций selectable.
Примеры кода: Вызовите этот метод: var options = $( ".selector" ).selectable( "option" ); |
| option( optionName, value ) | jQuery (только плагин) | Устанавливает для указанногоoptionNameзначение связанной опции selectable.
Примеры кода: Вызовите этот метод: $( ".selector" ).selectable( "option", "disabled", true ); |
| option( options ) | jQuery (только плагин) | Устанавливает одну или несколько опций для selectable.
Примеры кода: Вызовите этот метод:
$( ".selector" ).selectable( "option", { disabled: true } );
|
| refresh() | jQuery (только плагин) | Обновляет позицию и размер каждого элемента selectable. КогдаautoRefreshопция установлена в false, этот метод можно использовать для ручного пересчёта позиции и размера каждого элемента selectable.
Примеры кода: Вызовите метод refresh: $( ".selector" ).selectable( "refresh" ); |
| widget() | jQuery | ВозвращаетjQueryобъект, содержащий элемент selectable.
Примеры кода: Вызовите метод widget: var widget = $( ".selector" ).selectable( "widget" ); |
| Events | Type | Описание |
|---|---|---|
| create( event, ui ) | selectablecreate | Срабатывает, когда selectable создан.
Примечание: Примеры кода: Инициализировать selectable с указанной функцией обратного вызова create:
$( ".selector" ).selectable({
create: function( event, ui ) {}
});
Привяжите обработчик события к событию selectablecreate:
$( ".selector" ).on( "selectablecreate", function( event, ui ) {} );
|
| selected( event, ui ) | selectableselected | Срабатывает в конце операции выделения, когда каждый элемент был добавлен к выделению.
Примеры кода: Инициализируйте selectable с указанной функцией обратного вызова selected:
$( ".selector" ).selectable({
selected: function( event, ui ) {}
});
Привяжите обработчик события к событию selectableselected:
$( ".selector" ).on( "selectableselected", function( event, ui ) {} );
|
| selecting( event, ui ) | selectableselecting | Срабатывает во время операции выделения, когда каждый элемент добавляется к выделению.
Примеры кода: Инициализируйте selectable с указанной функцией обратного вызова selecting:
$( ".selector" ).selectable({
selecting: function( event, ui ) {}
});
Привяжите обработчик события к событию selectableselecting:
$( ".selector" ).on( "selectableselecting", function( event, ui ) {} );
|
| start( event, ui ) | selectablestart | Срабатывает в начале операции выделения.
Примечание: Примеры кода: Инициализируйте selectable с указанной функцией обратного вызова start:
$( ".selector" ).selectable({
start: function( event, ui ) {}
});
Привяжите обработчик события к событию selectablestart:
$( ".selector" ).on( "selectablestart", function( event, ui ) {} );
|
| stop( event, ui ) | selectablestop | Срабатывает в конце операции выделения.
Примечание: Примеры кода: Инициализируйте selectable с указанной функцией обратного вызова stop:
$( ".selector" ).selectable({
stop: function( event, ui ) {}
});
Привяжите обработчик события к событию selectablestop:
$( ".selector" ).on( "selectablestop", function( event, ui ) {} );
|
| unselected( event, ui ) | selectableunselected | Срабатывает в конце операции выделения, когда каждый элемент удаляется из выделения.
Примеры кода: Инициализировать виджет selectable с указанной функцией обратного вызова unselected:
$( ".selector" ).selectable({
unselected: function( event, ui ) {}
});
Привязать обработчик события к событию selectableunselected:
$( ".selector" ).on( "selectableunselected", function( event, ui ) {} );
|
| unselecting( event, ui ) | selectableunselecting | Срабатывает во время операции выделения, когда каждый элемент удаляется из выделения.
Примеры кода: Инициализировать виджет selectable с указанной функцией обратного вызова unselecting:
$( ".selector" ).selectable({
unselecting: function( event, ui ) {}
});
Привязать обработчик события к событию selectableunselecting:
$( ".selector" ).on( "selectableunselecting", function( event, ui ) {} );
|
Примеры
Простой виджет Selectable из jQuery UI.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>可选择小部件(Selectable Widget)演示</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
<style>
#selectable .ui-selecting {
background: #ccc;
}
#selectable .ui-selected {
background: #999;
}
</style>
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
</head>
<body>
<ul id="selectable">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
</ul>
<script>
$( "#selectable" ).selectable();
</script>
</body>
</html>
Другие расширения