alex5e
@alex5e

Как подружить JQtree Drag and Drop плагин с кастомным скроллбаром?

Добрый день. Пытаюсь подружить плагин Jqtree для реализации дерева с mCustomScrollbar плагином. Jqtree реализован без JQuery UI .dragable и .dropable. Кастомный скроллбар при прокручивании блока меняет высоту дива, в котором расмещен список и высоту полосы скролла с помощью js. Проблемма в том что есть схватить элемент дерева и проскроллить мышкой, то этот элемент "теряется" и drag and drop фактически не работает.
Замена mCustomScrollbar на другой плагин тоже не помогла т.к. все кастомные скроллбары работают по одному принципу.
В плагине Jqtree нашел функцию которая срабатывает при перещении "взятого элемента" и внутри повесил "mousewheel", но это не помогло. Перетаскиваемый элемент все равно теряется, однако с обычным скроллбаром Jqtree-плагин работает без проблем.
DragElement.prototype.move = function(page_x, page_y) {
            $('#tree').mousewheel(function(e){
                if(e.deltaY > 0) {
       /* Изменение высоты блока и скролла */
                    $('.mCSB_container').css('top', ((parseInt($('.mCSB_container').css('top')) + 3.75)) + 'px');
                    $('#mCSB_1_dragger_vertical').css('top', ((parseInt($('#mCSB_1_dragger_vertical').css('top')) - 0.125)) + 'px');
                }
                else{
                    $('.mCSB_container').css('top', ((parseInt($('.mCSB_container').css('top')) - 3.75)) + 'px');
                    $('#mCSB_1_dragger_vertical').css('top', ((parseInt($('#mCSB_1_dragger_vertical').css('top')) + 0.125)) + 'px');
                }         

      });
      return this.$element.offset({
        left: page_x - this.offset_x,
        top: page_y - this.offset_y
      });
    };


Может есть у кого идеи, как решить эту проблему не переписывая все на Jquery UI ?
  • Вопрос задан
  • 2445 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы