Perdón, contesté muy rapidito....
Prueba con este código:
Código Javascript
:
Ver original(function ($){
// Prepare layout options.
var options = {
autoResize: true, // This will auto-update the layout when the browser window is resized.
container: $('#todo'), // Optional, used for some extra CSS styling
offset: 20, // Optional, the distance between grid items
itemWidth:280, // Optional, the width of a grid item
fillEmptySpace: true // Optional, fill the bottom of each column with widths of flexible height
};
// Get a reference to your grid items.
var handler = $('#tiles li'),
filters = $('#filters li');
$('#tiles').imagesLoaded(function() {
// Call the layout function.
handler.wookmark(options);
/**
* When a filter is clicked, toggle it's active state and refresh.
*/
function onClickFilter(e) {
var $item = $(e.currentTarget),
activeFilters = [],
filterType = $item.data('filter');
if (filterType === 'all') {
filters.removeClass('active');
} else {
$item.toggleClass('active');
// Collect active filter strings
filters.filter('.active').each(function() {
activeFilters.push($(this).data('filter'));
});
}
handler.wookmarkInstance.filter(activeFilters, 'or');
}
// Capture filter click events.
$('#filters').on('click.wookmark-filter', 'li', onClickFilter);
});
})(jQuery);
Así, las variables "options", "handlers" y "filters" serán globales (accesibles para cualquier trozo de código de js).
Una vez comprobado que así funciona, al recargar tu div, supongo que usarás alguna función en plan $.ajax, o cosas.... puedes volver a ejecutar esta linea: