Обратный вызов изотопов не происходит после изменения размера окна

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

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

Спасибо за вашу помощь!


person Community    schedule 06.09.2012    source источник


Ответы (2)


это сработало..

документы

Подобно обратному вызову, onLayout — это функция, которая будет запускаться каждый раз, когда экземпляр Isotope выполняет свою логику макета.

$('#container').isotope({
  onLayout: function( $elems, instance ) {
    // `this` refers to jQuery object of the container element
    console.log( this.height() );
    // callback provides jQuery object of laid-out item elements
    $elems.css({ background: 'blue' });
    // instance is the Isotope instance
    console.log( instance.$filteredAtoms.length );
  }
});
person Gagan    schedule 19.04.2013

я искал в том ethere и не мог найти решение. поэтому я выбрал этот уродливый:

$(window).smartresize(function () {
    setTimeout(function () {
        //your function
    }, 810);
});

поэтому при изменении размера я устанавливаю тайм-аут, который вызывает 810 мс после ретрансляции изотопов, что должно занять 800 мс в jquery или 0,8 с в css3. как говорится, это некрасиво, но на данный момент я соответствую цели ..

person honk31    schedule 11.02.2013