Каков наилучший способ отключения snapTolerance с правой и нижней стороны перетаскиваемого объекта JQuery (пользовательский интерфейс 1.7.2)? - PullRequest
2 голосов
/ 13 октября 2010

Что я хотел бы сделать, это отключить snapTolerance для правой и нижней сторон перетаскиваемого объекта JQuery.Следующий код, кажется, управляет snapTolerance перетаскиваемых объектов, когда я устанавливаю snapMode на 'inner'.

Моя первоначальная мысль - каким-то образом переопределить эту часть кода, но я не знаю, как это сделать,Или, может быть, есть лучший подход?

TIA


>$.ui.plugin.add("draggable", "snap", {
>    ...
>    drag: function(event, ui) {
>       ...
>       if(o.snapMode != 'outer') {
>          var ts = Math.abs(t - y1) 
>          var bs = Math.abs(b - y2) 
>          var ls = Math.abs(l - x1) 
>          var rs = Math.abs(r - x2) 
>          if(ts) ui.position.top = inst._convertPositionTo("relative", { top: t, left: 0 }).top - inst.margins.top;
>          if(bs) ui.position.top = inst._convertPositionTo("relative", { top: b - inst.helperProportions.height, left: 0 }).top - inst.margins.top;
>          if(ls) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: l }).left - inst.margins.left;
>          if(rs) ui.position.left = inst._convertPositionTo("relative", { top: 0, left: r - inst.helperProportions.width }).left - inst.margins.left;
>        }
>   ...
>   }
>...
>});

...