Использую библиотеку Isotope для отображения и фильтрации элементов с изображениями на странице.
$container = $('#portfolio_grid').isotope({
itemSelector: '.grid-item',
masonry: {
columnWidth: '.grid-sizer'
},
percentPosition: true,
transitionDuration: '0.2s'
});
$('#portfolio_grid').imagesLoaded().progress( function() {
$container.isotope('layout');
portfolio_pagination();
});
Также использую Ajax, чтобы получить нужные данные для фильтрации:
$.ajax({
url: '../funcs/portfolio.php',
dataType: 'text',
data:{
type: 'sortPortfolio',
tags: JSON.stringify(checkedTagsArray)
},
type: 'post',
beforeSend: function() {},
success: function(data){
var data = $.parseJSON(data);
for(var i = 0; i < data.length;i++){
$('#portfolio #portfolio_grid .grid-item[data-work-id='+data[i]+']').addClass('active');
}
var $msn = $('#portfolio_grid');
$msn.isotope({itemSelector: '.grid-item'});
$msn.isotope({ filter: '.active' }, onFilterFinished());
},
complete: function(data){},
error: function(data){
alert('Error when adding data. Contact developer please.')
}
});
Функция, которая должна выполняться после фильтрации (onFilterFinished()
), содержит для теста просто смену фона:
function onFilterFinished(){
$('#container').css('background-color','red');
}
Собственно, функция onFilterFinished срабатывает вне зависимости от того, закончилась ли фильтрация или нет. Что может быть не так?
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Как сделать так чтобы при создании нового элемента в него переносиля фокус?
Мой компонент React "должен" рендерить немного HTML, а потом применять к нему jQuery-плагин
Здравствуйте! Знаю как отправлять ajax запросы методом POST, но не знаю как отправлять методом GET (те
Нужно поставить курсор в конец contenteditable с помощью js и jq