Scriptaculous Drag: Как сместить элемент перетаскивания? - PullRequest
2 голосов
/ 25 марта 2010

Это давняя проблема - но теперь я использую Scriptaculous, чтобы вернуться, чтобы преследовать меня. При перетаскивании узла дерева над другими узлами дерева я хочу, чтобы при каждом перетаскивании узла запускалась наведение мыши. Поэтому я хочу расположить перетаскивающую вещь так, чтобы ее верхний левый угол был немного ниже и правее указателя мыши

кто-нибудь может помочь? - спасибо

1 Ответ

0 голосов
/ 28 марта 2010

Может быть, есть ответ в их родном коде, но я не смог его найти.

Так что я исправил это, добавив плагин. Изменены эти строки в Draggable.prototype.draw

//  if((!this.options.constraint) || (this.options.constraint=='horizontal'))
//      style.left = p[0] + "px";
//  if((!this.options.constraint) || (this.options.constraint=='vertical'))
//      style.top = p[1] + "px";  

if((!this.options.constraint) || (this.options.constraint=='horizontal'))
    style.left = ((this.options.mouseOffset && point[0]) || p[0]) + "px";
if((!this.options.constraint) || (this.options.constraint=='vertical'))
    style.top = ((this.options.mouseOffset && point[1]) || p[1]) + "px"; 

и когда я создаю перетаскиваемый объект, я устанавливаю свой собственный параметр

mouseOffset: true
...