Выбираемый плагин JQuery UI - выбор нескольких перетаскиваний мышью и отмена выбора - PullRequest
2 голосов
/ 21 марта 2012

Я использую плагин JQuery UI для выбора ячеек таблицы, вот пример кода: http://jsbin.com/ejewes/edit#javascript,html,live

Я хочу внести изменения в это, чтобы я мог
1. сделать несколько нажатий мыши (без использования клавиши Ctrl)
2. отмените выбор ячеек, перетащив или щелкнув одну / несколько выделенных ячеек

Я перебирал похожие вопросы на этом форуме, но пока у меня не получилось никакого решения! Кто-нибудь может помочь мне настроить этот плагин или указать какой-нибудь ресурс, который мог бы помочь мне сделать это?

Заранее большое спасибо!

Дипа Таликар

1 Ответ

2 голосов
/ 23 марта 2012
Here's the solution: 

var _selectRange = false, _deselectQueue = [];
$(function() {
   $( "#selectable" ).selectable({
     selecting: function (event, ui) {
        if (event.detail == 0) {
            _selectRange = true;
            return true;
        }
        if ($(ui.selecting).hasClass('ui-selected')) {
            _deselectQueue.push(ui.selecting);
        }
    },
    unselecting: function (event, ui) {
        $(ui.unselecting).addClass('ui-selected');
    },
    stop: function () {
        if (!_selectRange) {
            $.each(_deselectQueue, function (ix, de) {
                $(de)
                    .removeClass('ui-selecting')
                    .removeClass('ui-selected');
            });
        }
        _selectRange = false;
        _deselectQueue = [];
      }
    });
  });

Но надо выяснить, как отменить выбор нескольких ячеек с помощью перетаскивания мышью , попытался, но безуспешно! Любая помощь, ценится!

...