jQuery UI, изменяемого размера - направление операции

В JavaScript, впервые увидев !!a (как способ преобразования в логическое значение).

9
задан gruszczy 16 July 2009 в 19:30
поделиться

3 ответа

Не уверен, имели ли вы в виду, что хотите ограничить операцию изменения размера определенной осью, или хотите знать, в каком направлении на самом деле произошло изменение размера.

RaYell's ответ работает, если вы хотели прежнего. Я расскажу о последнем.

Если вы настроите изменяемый размер следующим образом:

var r = $("#resizable");
r.resizable();

Допустим, вы хотите знать, в каком направлении произошло изменение размера в после , когда пользователь отпускает кнопку мыши. Давайте свяжем функцию с событием остановки изменения размера:

r.bind('resizestop', function(event, ui) {
    // determine resize deltas
    var delta_x = ui.size.width - ui.originalSize.width;
    var delta_y = ui.size.height - ui.originalSize.height;
}

Используя переданный объект ui, мы можем определить относительное изменение размера, вычитая новый размер из старого. После этого вы можете использовать delta_x и delta_y , как хотите. Построим строку, соответствующую одному из ручек.

5
ответ дан 4 December 2019 в 10:05
поделиться

Я думаю, что опция обрабатывает именно то, что вам нужно:

$(selector).resizable({handles: 'n, s, e, w'})

Где буквы обозначают географические направления:

  • n - север (вверху)
  • s - юг (внизу)
  • e - восток (справа)
  • w - запад (слева)
  • ne - северо-восток (вверху слева)
  • se - юго-восток (внизу слева)
  • nw - север запад (вверху слева)
  • sw - юго-запад (внизу слева)

Используйте любое подмножество из вышеперечисленного, которое вам нравится.

Вы можете найти документацию по этой опции здесь

3
ответ дан 4 December 2019 в 10:05
поделиться

В обратных вызовах запуска, изменения размера и остановки:

$(this).data('resizable').axis
5
ответ дан 4 December 2019 в 10:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: