JQuery вызывает функцию при перетаскивании элемента - PullRequest
2 голосов
/ 04 августа 2011

Я новичок в jQuery.Но я хотел бы использовать его функциональность перетаскивания в моем проекте.Пока я перетаскиваю свой элемент, я хотел бы вызвать функцию, но не отменять перетаскивание.Я хочу сохранить элемент после запуска функции.

Вот часть кода:

 $(settings.columns).sortable({
        items: $sortableItems,
        connectWith: $(settings.columns),
        handle: settings.handleSelector,
        placeholder: 'widget-placeholder',
        forcePlaceholderSize: true,
        revert: 300,
        delay: 100,
        opacity: 0.8,
        containment: 'document',
        ghosting: true,
        start: function (e,ui) {

            $(ui.helper).addClass('dragging');
    **// here is the place I would like to call a function.**
             **//example gotoPage(2);**

        },
        stop: function (e,ui) {
           $(ui.item).css({width:''}).removeClass('dragging');
           $(settings.columns).sortable('enable');
            /* Save prefs to cookie: */
           iNettuts.savePreferences();



        }
    });

Когда я помещаю вызывающий код в start(), запускается функцияно отменяет и перетаскивание.По сути, я хочу сохранить элемент и запустить функцию.Надеюсь, я прояснил это достаточно.Если нет, пожалуйста, спросите.

Ответы [ 3 ]

0 голосов
/ 04 августа 2011

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

Почему бы просто не написать функцию одним щелчком мыши?

$(settings.columns).click(function(e,ui){
    //whatever you want to do
});

Я не понимаю, почему это не сработает - как только вы щелкаете элемент, чтобы перетащить его, это событие должно быть запущено.

0 голосов
/ 06 октября 2014

это старая запись, но теперь есть решение, использующее событие «перетаскивания»:

http://jqueryui.com/draggable/#events

событие перетаскивания будет срабатывать при перемещении элемента div

0 голосов
/ 04 августа 2011

Возможно, при вызове функции вы теряете фокус на перетаскиваемом элементе.

...