В jQuery UI 1.9 или выше, как подавить восстановление после эффекта размера?

0

Кажется, что jQuery UI 1.9 или выше восстанавливает первоначальный размер после эффекта размера. Мой пример кода здесь:

http://jsfiddle.net/mQCxY/

$(function () {
    $('.circle').click(function () {
        $(this).effect("size",
            { to: {width: 50,height: 50}, origin: ['bottom', 'right'] },
            1000, function () {
                $(this).css({'background': 'blue' });
        });
    });
});

В принципе, если я выберу jQuery UI 1.8.18 (под jQuery 1.7.2), тогда форма уменьшится до нужного размера и останется там. Но позже пользовательский интерфейс jQuery восстановит форму.

Я также заметил, что опции "origin" не вступили в силу для более высокого пользовательского интерфейса jQuery. Например, я использовал

origin: ['bottom', 'right']

Что не повлияло на jQuery UI 1.9 или более поздние версии.

Итак, как подавить "восстановление" и сделать "происхождение" эффективным в jQuery UI 1.8 или новее?

Теги:

1 ответ

0
Лучший ответ

выполненная новая функция, что будет делать то, что вам нужна скрипка

я изменил с effect на animate, а modifiyng css top + left, чтобы получить исходную функциональность, обратите внимание, что по умолчанию он переходит в верхний левый. ех.

origin => ['bottom'] же, как ['bottom','left']

origin => ['right'] то же, что и ['top','right'] т.д.

function size(object,to, origin, duration, callback){
    var leftResult = '+=0';
    var topResult = '+=0';
    if (origin != null && origin.length != 0){
        if ($.inArray('right', origin) >= 0){
            leftResult= '+='+to.width;
        }
        if ($.inArray('bottom', origin) >= 0){
            topResult= '+='+to.height;
        }
    }
    $(object).animate({
        height: to.height,
        width: to.width,
        left: leftResult,
        top: topResult
  }, duration, function() {
    if (typeof callback == "function") callback($(object));
  });
}

просто добавьте подтверждение в аргументы или измените обратный вызов по мере необходимости.

  • 2
    Пожалуйста, не просто дамп код в ответ. Почему это решает проблему?
  • 0
    Это способ, которым я пытался. Интересно, есть ли возможность сделать эту работу? Кроме того, как насчет происхождения?
Показать ещё 6 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню