jQuery перетаскиваемый ('отмена') вызывает ошибку: this.helper имеет значение null - PullRequest
2 голосов
/ 15 февраля 2011

У меня есть ползунок jQuery draggable (), который я хочу отменить при определенном событии, однако это вызывает ошибку: «this.helper is null». Код просто:

$( '#magicalscrollhandle' ).draggable( 'cancel' );

Есть идеи?

1 Ответ

5 голосов
/ 16 февраля 2011

«отмена» не является действительным методом для перетаскиваемого виджета.

Лучший способ отменить событие перетаскивания - вернуть false из обработчика события drag. Вы можете сделать это, основываясь на каком-то условии, которое вы установили в зависимости от происходящего события:

$("#draggable").draggable({
    drag: function() {
        if ($(this).hasClass("cancel")) {
            return false;
        }
    }
});

Так что вы бы применили класс cancel, чтобы остановить перетаскивание.

Вот небольшой пример, в котором я установил таймер, который заставляет элемент перестать быть перетаскиваемым через 5 секунд: http://jsfiddle.net/andrewwhitaker/y2yrA/1/

...