Spec-Zone.ru › jQuery UI

Сортируемый виджет

Сортируемый виджетверсия добавлена: 1.0

Описание: Переупорядочить элементы в списке или сетке с помощью мыши.

Быстрое навигацияПримеры

Параметры

appendTo
axis
cancel
classes
connectWith
containment
cursor
cursorAt
delay
disabled
distance
dropOnEmpty
forceHelperSize
forcePlaceholderSize
grid
handle
helper
items
opacity
placeholder
revert
scroll
scrollSensitivity
scrollSpeed
tolerance
zIndex

Методы

cancel
destroy
disable
enable
instance
option
refresh
refreshPositions
serialize
toArray
widget

События

activate
beforeStop
change
create
deactivate
out
over
receive
remove
sort
start
stop
update

Плагин jQuery UI Sortable позволяет сортировать выбранные элементы, перетаскивая их мышкой.

Примечание: Для сортировки строк таблицы необходимо сделать сортируемыми tbody, а не table.

Тематическое оформление

Виджет sortable использует фреймворк CSS jQuery UI CSS для стилизации внешнего вида. Если необходима специфическая стилизация для sortable, можно использовать следующие имена CSS-классов для перезаписи или в качестве ключей для параметра classes:

  • ui-sortable: Элемент sortable.
    • ui-sortable-handle: Маркер каждого сортируемого элемента, указанный с помощью handle параметра. По умолчанию, каждый сортируемый элемент также является маркером.
    • ui-sortable-placeholder: Элемент, отображающий предполагаемое положение элемента, который в данный момент сортируется.
  • ui-sortable-helper: Элемент, отображаемый при перетаскивании сортируемого элемента. Используемый элемент зависит от helper параметра.

Зависимости

  • UI Core
  • Фабрика виджетов
  • Взаимодействие с мышкой

Параметры

appendTo

Тип: jQuery или Элемент или Селектор или Строка
По умолчанию: "parent"
Определяет, куда будет добавлен помощник, который перемещается вместе с мышкой во время перетаскивания (например, для решения проблем с перекрытием/zIndex).
Поддерживаются несколько типов:
  • jQuery: Объект jQuery, содержащий элемент, в который необходимо добавить помощника.
  • Элемент: Элемент, в который необходимо добавить помощника.
  • Селектор: Селектор, определяющий элемент, в который нужно добавить помощника.
  • Строка: Строка "parent" приведет к тому, что помощник станет соседним элементом сортируемого элемента.
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром appendTo:

$( ".selector" ).sortable({
  appendTo: document.body
});

Получите или установите параметр appendTo, после инициализации:

// Getter
var appendTo = $( ".selector" ).sortable( "option", "appendTo" );
 
// Setter
$( ".selector" ).sortable( "option", "appendTo", document.body );

axis

Тип: Строка
По умолчанию: false
Если определено, элементы можно перетаскивать только по горизонтали или вертикали. Возможные значения: "x", "y".
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром axis:

$( ".selector" ).sortable({
  axis: "x"
});

Получите или установите параметр axis, после инициализации:

// Getter
var axis = $( ".selector" ).sortable( "option", "axis" );
 
// Setter
$( ".selector" ).sortable( "option", "axis", "x" );

cancel

Тип: Селектор
По умолчанию: "input,textarea,button,select,option"
Препятствует сортировке, если вы начинаете с элементов, соответствующих селектору.
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром cancel:

$( ".selector" ).sortable({
  cancel: "a,button"
});

Получите или установите параметр cancel, после инициализации:

// Getter
var cancel = $( ".selector" ).sortable( "option", "cancel" );
 
// Setter
$( ".selector" ).sortable( "option", "cancel", "a,button" );

classes

Тип: Объект
По умолчанию: {}

Укажите дополнительные классы для добавления к элементам виджета. Любые классы, указанные в разделе Стиль, могут использоваться в качестве ключей для переопределения их значения. Чтобы узнать больше об этом параметре, ознакомьтесь со статьей по параметру classes.

Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром classes, изменив тему для класса ui-sortable:

$( ".selector" ).sortable({
  classes: {
    "ui-sortable": "highlight"
  }
});

Получите или установите свойство параметра classes, после инициализации, здесь читается и изменяется тема для класса ui-sortable:

// Getter
var themeClass = $( ".selector" ).sortable( "option", "classes.ui-sortable" );
 
// Setter
$( ".selector" ).sortable( "option", "classes.ui-sortable", "highlight" );

connectWith

Тип: Селектор
По умолчанию: false
Селектор других сортируемых элементов, к которым должны быть подключены элементы из этого списка. Это односторонние отношения; если вы хотите, чтобы элементы подключались в обоих направлениях, параметр connectWith должен быть установлен на обоих сортируемых элементах.
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром connectWith:

$( ".selector" ).sortable({
  connectWith: "#shopping-cart"
});

Получите или установите параметр connectWith, после инициализации:

// Getter
var connectWith = $( ".selector" ).sortable( "option", "connectWith" );
 
// Setter
$( ".selector" ).sortable( "option", "connectWith", "#shopping-cart" );

containment

Тип: Элемент или Селектор или Строка
По умолчанию: false

Определяет ограничивающую область, в которой сортируемые элементы ограничены во время перетаскивания.

Примечание: Элемент, указанный для ограничения, должен иметь вычисленный размер ширины и высоты (хотя он не обязательно должен быть явным). Например, если у вас есть float: left сортируемые дочерние элементы и вы указываете containment: "parent", убедитесь, что у сортируемого/родительского контейнера также есть float: left, иначе будет height: 0, что приведет к неопределенному поведению.

Поддерживаются несколько типов:
  • Элемент: Элемент, который нужно использовать в качестве контейнера.
  • Селектор: Селектор, указывающий элемент, который нужно использовать в качестве контейнера.
  • Строка: Строка, определяющая элемент, который нужно использовать в качестве контейнера. Возможные значения: "parent", "document", "window".
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром containment:

$( ".selector" ).sortable({
  containment: "parent"
});

Получите или установите параметр containment, после инициализации:

// Getter
var containment = $( ".selector" ).sortable( "option", "containment" );
 
// Setter
$( ".selector" ).sortable( "option", "containment", "parent" );

cursor

Тип: Строка
По умолчанию: "auto"
Определяет курсор, который отображается во время сортировки.
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром cursor:

$( ".selector" ).sortable({
  cursor: "move"
});

Получите или установите параметр cursor, после инициализации:

// Getter
var cursor = $( ".selector" ).sortable( "option", "cursor" );
 
// Setter
$( ".selector" ).sortable( "option", "cursor", "move" );

cursorAt

Тип: Объект
По умолчанию: false
Перемещает сортируемый элемент или помощника, чтобы курсор всегда отображался с той же позиции. Координаты могут быть заданы как хеш с использованием комбинации одного или двух ключей: { top, left, right, bottom }.
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром cursorAt:

$( ".selector" ).sortable({
  cursorAt: { left: 5 }
});

Получите или установите параметр cursorAt, после инициализации:

// Getter
var cursorAt = $( ".selector" ).sortable( "option", "cursorAt" );
 
// Setter
$( ".selector" ).sortable( "option", "cursorAt", { left: 5 } );

delay

Тип: Целое число
По умолчанию: 0
Время в миллисекундах, определяющее, когда должна начаться сортировка. Добавление задержки помогает предотвратить нежелательные перетаскивания при нажатии на элемент. (версия устаревшая: 1.12)
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром delay:

$( ".selector" ).sortable({
  delay: 150
});

Получите или установите параметр delay, после инициализации:

// Getter
var delay = $( ".selector" ).sortable( "option", "delay" );
 
// Setter
$( ".selector" ).sortable( "option", "delay", 150 );

disabled

Тип: Булево
По умолчанию: false
Отключает сортировку, если установлено в true.
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром disabled:

$( ".selector" ).sortable({
  disabled: true
});

Получите или установите параметр disabled, после инициализации:

// Getter
var disabled = $( ".selector" ).sortable( "option", "disabled" );
 
// Setter
$( ".selector" ).sortable( "option", "disabled", true );

distance

Тип: Число
По умолчанию: 1
Допуск в пикселях для начала сортировки. Если задано, сортировка не начнется, пока мышь не будет перетянута за пределы расстояния. Может использоваться для разрешения щелчков по элементам в пределах обработчика. (версия устаревшая: 1.12)
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром distance:

$( ".selector" ).sortable({
  distance: 5
});

Получите или установите параметр distance, после инициализации:

// Getter
var distance = $( ".selector" ).sortable( "option", "distance" );
 
// Setter
$( ".selector" ).sortable( "option", "distance", 5 );

dropOnEmpty

Тип: Булево
По умолчанию: true
Если false, элементы из этого сортируемого элемента не могут быть помещены в пустой сортируемый элемент соединения (см. параметр connectWith).
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром dropOnEmpty:

$( ".selector" ).sortable({
  dropOnEmpty: false
});

Получите или установите параметр dropOnEmpty, после инициализации:

// Getter
var dropOnEmpty = $( ".selector" ).sortable( "option", "dropOnEmpty" );
 
// Setter
$( ".selector" ).sortable( "option", "dropOnEmpty", false );

forceHelperSize

Тип: Булево
По умолчанию: false
Если true, принудительно задает размер помощника.
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром forceHelperSize:

$( ".selector" ).sortable({
  forceHelperSize: true
});

Получите или установите параметр forceHelperSize, после инициализации:

// Getter
var forceHelperSize = $( ".selector" ).sortable( "option", "forceHelperSize" );
 
// Setter
$( ".selector" ).sortable( "option", "forceHelperSize", true );

forcePlaceholderSize

Тип: Булево
По умолчанию: false
Если true, принудительно задаёт размер placeholder.
Примеры кода:

Инициализируйте сортируемый элемент с указанным параметром forcePlaceholderSize:

$( ".selector" ).sortable({
  forcePlaceholderSize: true
});

Получите или установите параметр forcePlaceholderSize, после инициализации:

// Getter
var forcePlaceholderSize = $( ".selector" ).sortable( "option", "forcePlaceholderSize" );
 
// Setter
$( ".selector" ).sortable( "option", "forcePlaceholderSize", true );

Сетка

Тип: Массив
По умолчанию: false
Фиксирует элемент сортировки или помощника на сетке с шагом в x и y пикселей. Значения массива: [ x, y ].
Примеры кода:

Инициализируйте сортируемый элемент с параметром grid:

$( ".selector" ).sortable({
  grid: [ 20, 10 ]
});

Получите или установите параметр grid после инициализации:

// Getter
var grid = $( ".selector" ).sortable( "option", "grid" );
 
// Setter
$( ".selector" ).sortable( "option", "grid", [ 20, 10 ] );

Управляющая рукоятка

Тип: Селектор или Элемент
По умолчанию: false
Ограничивает клик для начала сортировки указанным элементом.
Примеры кода:

Инициализируйте сортируемый элемент с параметром handle:

$( ".selector" ).sortable({
  handle: ".handle"
});

Получите или установите параметр handle после инициализации:

// Getter
var handle = $( ".selector" ).sortable( "option", "handle" );
 
// Setter
$( ".selector" ).sortable( "option", "handle", ".handle" );

Вспомогательный элемент

Тип: Строка или Функция()
По умолчанию: "original"
Позволяет использовать вспомогательный элемент для отображения во время перетаскивания.
Поддерживаются несколько типов:
  • Строка: Если установлено значение "clone", то элемент будет скопирован, а копия будет перетаскиваться.
  • Функция: Функция, которая должна возвращать jQuery-объект или DOM-элемент для использования во время перетаскивания. Функция получает событие и jQuery-элемент, который сортируется.
Примеры кода:

Инициализируйте сортируемый элемент с параметром helper:

$( ".selector" ).sortable({
  helper: "clone"
});

Получите или установите параметр helper после инициализации:

// Getter
var helper = $( ".selector" ).sortable( "option", "helper" );
 
// Setter
$( ".selector" ).sortable( "option", "helper", "clone" );

Элементы

Тип: Селектор
По умолчанию: "> *"
Указывает, какие элементы внутри элемента должны быть сортируемыми.
Примеры кода:

Инициализируйте сортируемый элемент с параметром items:

$( ".selector" ).sortable({
  items: "> li"
});

Получите или установите параметр items после инициализации:

// Getter
var items = $( ".selector" ).sortable( "option", "items" );
 
// Setter
$( ".selector" ).sortable( "option", "items", "> li" );

Прозрачность

Тип: Число
По умолчанию: false
Определяет прозрачность вспомогательного элемента во время сортировки. От 0.01 до 1.
Примеры кода:

Инициализируйте сортируемый элемент с параметром opacity:

$( ".selector" ).sortable({
  opacity: 0.5
});

Получите или установите параметр opacity после инициализации:

// Getter
var opacity = $( ".selector" ).sortable( "option", "opacity" );
 
// Setter
$( ".selector" ).sortable( "option", "opacity", 0.5 );

Заполнитель

Тип: Строка
По умолчанию: false
Имя класса, которое применяется к пустому месту.
Примеры кода:

Инициализируйте сортируемый элемент с параметром placeholder:

$( ".selector" ).sortable({
  placeholder: "sortable-placeholder"
});

Получите или установите параметр placeholder после инициализации:

// Getter
var placeholder = $( ".selector" ).sortable( "option", "placeholder" );
 
// Setter
$( ".selector" ).sortable( "option", "placeholder", "sortable-placeholder" );

Возврат

Тип: Булево или Число
По умолчанию: false
Возвращаются ли сортируемые элементы в новые позиции с помощью плавной анимации.
Поддерживаются несколько типов:
  • Булево: Если установлено значение true, элементы будут анимированы с заданной продолжительностью.
  • Число: Продолжительность анимации в миллисекундах.
Примеры кода:

Инициализируйте сортируемый элемент с параметром revert:

$( ".selector" ).sortable({
  revert: true
});

Получите или установите параметр revert после инициализации:

// Getter
var revert = $( ".selector" ).sortable( "option", "revert" );
 
// Setter
$( ".selector" ).sortable( "option", "revert", true );

Прокрутка

Тип: Булево
По умолчанию: true
Если установлено значение true, страница прокручивается при достижении края.
Примеры кода:

Инициализируйте сортируемый элемент с параметром scroll:

$( ".selector" ).sortable({
  scroll: false
});

Получите или установите параметр scroll после инициализации:

// Getter
var scroll = $( ".selector" ).sortable( "option", "scroll" );
 
// Setter
$( ".selector" ).sortable( "option", "scroll", false );

Чувствительность к прокрутке

Тип: Число
По умолчанию: 20
Определяет, насколько близко мышь должна быть к краю, чтобы начать прокрутку.
Примеры кода:

Инициализируйте сортируемый элемент с параметром scrollSensitivity:

$( ".selector" ).sortable({
  scrollSensitivity: 10
});

Получите или установите параметр scrollSensitivity после инициализации:

// Getter
var scrollSensitivity = $( ".selector" ).sortable( "option", "scrollSensitivity" );
 
// Setter
$( ".selector" ).sortable( "option", "scrollSensitivity", 10 );

Скорость прокрутки

Тип: Число
По умолчанию: 20
Скорость прокрутки окна, когда курсор мыши попадает в зону scrollSensitivity.
Примеры кода:

Инициализируйте сортируемый элемент с параметром scrollSpeed:

$( ".selector" ).sortable({
  scrollSpeed: 40
});

Получите или установите параметр scrollSpeed после инициализации:

// Getter
var scrollSpeed = $( ".selector" ).sortable( "option", "scrollSpeed" );
 
// Setter
$( ".selector" ).sortable( "option", "scrollSpeed", 40 );

Толерантность

Тип: Строка
По умолчанию: "intersect"
Указывает режим, используемый для проверки, нависает ли перемещаемый элемент над другим элементом. Возможные значения:
  • "intersect": Элемент перекрывает другой элемент как минимум на 50%.
  • "pointer": Курсор мыши перекрывает другой элемент.
Примеры кода:

Инициализируйте сортируемый элемент с параметром tolerance:

$( ".selector" ).sortable({
  tolerance: "pointer"
});

Получите или установите параметр tolerance после инициализации:

// Getter
var tolerance = $( ".selector" ).sortable( "option", "tolerance" );
 
// Setter
$( ".selector" ).sortable( "option", "tolerance", "pointer" );

zIndex

Тип: Целое число
По умолчанию: 1000
Z-индекс элемента/помощника во время сортировки.
Примеры кода:

Инициализируйте сортируемый элемент с параметром zIndex:

$( ".selector" ).sortable({
  zIndex: 9999
});

Получите или установите параметр zIndex после инициализации:

// Getter
var zIndex = $( ".selector" ).sortable( "option", "zIndex" );
 
// Setter
$( ".selector" ).sortable( "option", "zIndex", 9999 );

Методы

cancel()Возвращает: jQuery (только плагин)

Отменяет изменение в текущем сортируемом элементе и возвращает его в состояние до начала текущей сортировки. Полезно в функциях обратного вызова stop и receive.
  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода cancel:

$( ".selector" ).sortable( "cancel" );

destroy()Возвращает: jQuery (только плагин)

Полностью удаляет функциональность сортировки. Это вернёт элемент в состояние до инициализации.
  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода destroy:

$( ".selector" ).sortable( "destroy" );

disable()Возвращает: jQuery (только плагин)

Отключает сортировку.
  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода disable:

$( ".selector" ).sortable( "disable" );

enable()Возвращает: jQuery (только плагин)

Включает сортировку.
  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода enable:

$( ".selector" ).sortable( "enable" );

instance()Возвращает: Объект

Получает объект экземпляра сортируемого элемента. Если элемент не имеет связанного экземпляра, возвращается undefined.

В отличие от других методов виджетов, instance() можно безопасно вызывать для любого элемента после загрузки плагина сортировки.

  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода instance:

$( ".selector" ).sortable( "instance" );

option( optionName )Возвращает: Объект

Получает значение, связанное с указанным optionName.

Примечание: Для опций, которые имеют объекты в качестве значения, можно получить значение определённого ключа, используя обозначение точкой. Например, "foo.bar" получит значение свойства bar в опции foo.

  • optionName
    Тип: Строка
    Имя опции для получения.
Примеры кода:

Вызов метода:

var isDisabled = $( ".selector" ).sortable( "option", "disabled" );

option()Возвращает: Объект

Получает объект, содержащий пары ключ/значение, представляющие текущий хеш опций сортировки.
  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода:

var options = $( ".selector" ).sortable( "option" );

option( optionName, value )Возвращает: jQuery (только плагин)

Устанавливает значение опции сортировки, связанной с указанным optionName.

Примечание: Для опций, которые имеют объекты в качестве значения, можно установить значение только одного свойства, используя обозначение точкой для optionName. Например, "foo.bar" обновит только свойство bar опции foo.

  • optionName
    Тип: Строка
    Имя опции для установки.
  • value
    Тип: Объект
    Значение для установки опции.
Примеры кода:

Вызов метода:

$( ".selector" ).sortable( "option", "disabled", true );

option( options )Возвращает: jQuery (только плагин)

Устанавливает одну или несколько опций для сортировки.
  • options
    Тип: Объект
    Карта пар опция-значение для установки.
Примеры кода:

Вызов метода:

$( ".selector" ).sortable( "option", { disabled: true } );

refresh()Возвращает: jQuery (только плагин)

Обновляет элементы сортировки. Срабатывает перезагрузка всех элементов сортировки, что приводит к распознаванию новых элементов.
  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода refresh:

$( ".selector" ).sortable( "refresh" );

refreshPositions()Возвращает: jQuery (только плагин)

Обновляет кэшированные позиции элементов сортировки. Вызов этого метода обновляет кэшированные позиции элементов всех сортируемых элементов.
  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода refreshPositions:

$( ".selector" ).sortable( "refreshPositions" );

serialize( options )Возвращает: Строка

Сериализует элементы сортировки в строку, подходящую для отправки формы/ajax. Вызов этого метода создаёт хеш, который можно добавить в любой URL для лёгкой отправки нового порядка элементов на сервер.

По умолчанию работает, просматривая id каждого элемента в формате "setname_number", и выводит хеш, подобный "setname[]=number&setname[]=number".

Примечание: Если serialize возвращает пустую строку, убедитесь, что атрибуты id содержат нижнее подчёркивание. Они должны быть в формате: "set_number" Например, список из 3 элементов с атрибутами id "foo_1", "foo_5", "foo_2" будет сериализован в "foo[]=1&foo[]=5&foo[]=2". Можно использовать нижнее подчёркивание, знак равенства или дефис для разделения набора и номера. Например, "foo=1", "foo-1", и "foo_1" все сериализуются в "foo[]=1".

  • options
    Тип: Объект
    Опции для настройки сериализации.
    • key (по умолчанию: the part of the attribute in front of the separator)
      Тип: Строка
      Заменяет part1[] указанным значением.
    • attribute (по умолчанию: "id")
      Тип: Строка
      Имя атрибута для использования в значениях.
    • expression (по умолчанию: /(.+)[-=_](.+)/)
      Тип: Регулярное выражение
      Регулярное выражение, используемое для разделения значения атрибута на части ключа и значения.
Примеры кода:

Вызов метода serialize:

var sorted = $( ".selector" ).sortable( "serialize", { key: "sort" } );

toArray( options )Возвращает: Массив

Сериализует id элементов сортировки в массив строк.
  • options
    Тип: Объект
    Опции для настройки сериализации.
    • attribute (по умолчанию: "id")
      Тип: Строка
      Имя атрибута для использования в значениях.
Примеры кода:

Вызов метода toArray:

var sortedIDs = $( ".selector" ).sortable( "toArray" );

widget()Возвращает: jQuery

Возвращает jQuery объект, содержащий элемент сортировки.
  • Этот метод не принимает аргументов.
Примеры кода:

Вызов метода widget:

var widget = $( ".selector" ).sortable( "widget" );

События

activate( event, ui )Тип: sortactivate

Это событие срабатывает при использовании соединённых списков, каждое соединённое поле получает его при запуске перетаскивания.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Элемент sortable, откуда взята запись, если она перемещается из одного sortable в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места-заполнителя.
Примеры кода:

Инициализируйте sortable с указанным обратным вызовом activate:

$( ".selector" ).sortable({
  activate: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortactivate:

$( ".selector" ).on( "sortactivate", function( event, ui ) {} );

beforeStop( event, ui )Тип: sortbeforestop

Это событие срабатывает при остановке сортировки, но когда placeholder/helper всё ещё доступен.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Элемент sortable, откуда взята запись, если она перемещается из одного sortable в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места-заполнителя.
Примеры кода:

Инициализируйте sortable с указанным обратным вызовом beforeStop:

$( ".selector" ).sortable({
  beforeStop: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortbeforestop:

$( ".selector" ).on( "sortbeforestop", function( event, ui ) {} );

change( event, ui )Тип: sortchange

Это событие срабатывает во время сортировки, но только когда изменилось положение в DOM.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Элемент sortable, откуда взята запись, если она перемещается из одного sortable в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места-заполнителя.
Примеры кода:

Инициализируйте sortable с указанным обратным вызовом change:

$( ".selector" ).sortable({
  change: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortchange:

$( ".selector" ).on( "sortchange", function( event, ui ) {} );

create( event, ui )Тип: sortcreate

Срабатывает при создании sortable.
  • event
    Тип: Event
  • ui
    Тип: Объект

Примечание: Объект ui пуст, но включён для согласованности с другими событиями.

Примеры кода:

Инициализируйте sortable с указанным обратным вызовом create:

$( ".selector" ).sortable({
  create: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortcreate:

$( ".selector" ).on( "sortcreate", function( event, ui ) {} );

deactivate( event, ui )Тип: sortdeactivate

Это событие срабатывает при остановке сортировки, распространяется на все возможные соединённые списки.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Элемент sortable, откуда взята запись, если она перемещается из одного sortable в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места-заполнителя.
Примеры кода:

Инициализируйте sortable с указанным обратным вызовом deactivate:

$( ".selector" ).sortable({
  deactivate: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortdeactivate:

$( ".selector" ).on( "sortdeactivate", function( event, ui ) {} );

out( event, ui )Тип: sortout

Это событие срабатывает, когда элемент sortable перемещается из списка sortable.

Примечание: Это событие также срабатывает при падении элемента sortable.

  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Элемент sortable, откуда взята запись, если она перемещается из одного sortable в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места-заполнителя.
Примеры кода:

Инициализируйте sortable с указанным обратным вызовом out:

$( ".selector" ).sortable({
  out: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortout:

$( ".selector" ).on( "sortout", function( event, ui ) {} );

over( event, ui )Тип: sortover

Данное событие срабатывает, когда элемент сортируемого списка перемещается в другой сортируемый список.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Сортируемый список, из которого элемент был перемещён, если он перемещается из одного сортируемого списка в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места замены.
Примеры кода:

Инициализируйте сортируемый список с указанным обратным вызовом over:

$( ".selector" ).sortable({
  over: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortover:

$( ".selector" ).on( "sortover", function( event, ui ) {} );

receive( event, ui )Тип: sortreceive

Это событие срабатывает, когда элемент из подключенного сортируемого списка был отпущен в другой список. Последний является целевым объектом события.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Сортируемый список, из которого элемент был перемещён, если он перемещается из одного сортируемого списка в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места замены.
Примеры кода:

Инициализируйте сортируемый список с указанным обратным вызовом receive:

$( ".selector" ).sortable({
  receive: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortreceive:

$( ".selector" ).on( "sortreceive", function( event, ui ) {} );

remove( event, ui )Тип: sortremove

Это событие срабатывает, когда элемент сортируемого списка из списка был отпущен в другой. Предыдущий является целевым объектом события.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места замены.
Примеры кода:

Инициализируйте сортируемый список с указанным обратным вызовом remove:

$( ".selector" ).sortable({
  remove: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortremove:

$( ".selector" ).on( "sortremove", function( event, ui ) {} );

sort( event, ui )Тип: sort

Это событие срабатывает во время сортировки.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Сортируемый список, из которого элемент был перемещён, если он перемещается из одного сортируемого списка в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места замены.
Примеры кода:

Инициализируйте сортируемый список с указанным обратным вызовом sort:

$( ".selector" ).sortable({
  sort: function( event, ui ) {}
});

Привяжите обработчик событий к событию sort:

$( ".selector" ).on( "sort", function( event, ui ) {} );

start( event, ui )Тип: sortstart

Это событие срабатывает при начале сортировки.
  • event
    Тип: Event
  • ui
    Тип: Объект
    • helper
      Тип: jQuery
      Объект jQuery, представляющий вспомогательный элемент, который сортируется.
    • item
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • offset
      Тип: Объект
      Текущее абсолютное положение вспомогательного элемента, представленное как { top, left }.
    • position
      Тип: Объект
      Текущее положение вспомогательного элемента, представленное как { top, left }.
    • originalPosition
      Тип: Объект
      Исходное положение элемента, представленное как { top, left }.
    • sender
      Тип: jQuery
      Сортируемый список, из которого элемент был перемещён, если он перемещается из одного сортируемого списка в другой.
    • placeholder
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве места замены.
Примеры кода:

Инициализируйте сортируемый список с указанным обратным вызовом start:

$( ".selector" ).sortable({
  start: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortstart:

$( ".selector" ).on( "sortstart", function( event, ui ) {} );

останов( событие, ui )Тип: sortstop

Это событие срабатывает, когда сортировка остановлена.
  • событие
    Тип: Событие
  • ui
    Тип: Объект
    • помощник
      Тип: jQuery
      Объект jQuery, представляющий помощника, который сортируется.
    • элемент
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • смещение
      Тип: Объект
      Текущее абсолютное положение помощника, представленное как { top, left }.
    • позиция
      Тип: Объект
      Текущее положение помощника, представленное как { top, left }.
    • исходная позиция
      Тип: Объект
      Исходная позиция элемента, представленная как { top, left }.
    • отправитель
      Тип: jQuery
      Сортируемый элемент, откуда взялся элемент, если он перемещается из одного сортируемого элемента в другой.
    • заполнитель
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве заполнителя.
Примеры кода:

Инициализируйте сортируемый элемент с указанным обратным вызовом остановки:

$( ".selector" ).sortable({
  stop: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortstop:

$( ".selector" ).on( "sortstop", function( event, ui ) {} );

обновление( событие, ui )Тип: sortupdate

Это событие срабатывает, когда пользователь закончил сортировку, а позиция в DOM изменилась.
  • событие
    Тип: Событие
  • ui
    Тип: Объект
    • помощник
      Тип: jQuery
      Объект jQuery, представляющий помощника, который сортируется.
    • элемент
      Тип: jQuery
      Объект jQuery, представляющий текущий перетаскиваемый элемент.
    • смещение
      Тип: Объект
      Текущее абсолютное положение помощника, представленное как { top, left }.
    • позиция
      Тип: Объект
      Текущее положение помощника, представленное как { top, left }.
    • исходная позиция
      Тип: Объект
      Исходная позиция элемента, представленная как { top, left }.
    • отправитель
      Тип: jQuery
      Сортируемый элемент, откуда взялся элемент, если он перемещается из одного сортируемого элемента в другой.
    • заполнитель
      Тип: jQuery
      Объект jQuery, представляющий элемент, используемый в качестве заполнителя.
Примеры кода:

Инициализируйте сортируемый элемент с указанным обратным вызовом обновления:

$( ".selector" ).sortable({
  update: function( event, ui ) {}
});

Привяжите обработчик событий к событию sortupdate:

$( ".selector" ).on( "sortupdate", function( event, ui ) {} );

Пример:

Простой jQuery UI Сортируемый элемент.

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>sortable demo</title>
  <link rel="stylesheet" href="https://code.jquery.com/ui/1.13.3/themes/smoothness/jquery-ui.css">
  <script src="https://code.jquery.com/jquery-3.7.1.js"></script>
  <script src="https://code.jquery.com/ui/1.13.3/jquery-ui.js"></script>
</head>
<body>
 
<ul id="sortable">
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
  <li>Item 5</li>
</ul>
 
<script>$("#sortable").sortable();</script>
 
</body>
</html>

Демо:

© The jQuery Foundation and other contributors
Licensed under the MIT License.
https://api.jqueryui.com/sortable

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API