同位体フィルター メニューに問題があります。タイムスタンプに基づいて情報をロードし、フィルタリングできるようにする必要があります。残念ながら、私の sortBy スクリプトに関する何かがフィルター スクリプトと競合しています。
問題のjsは次のとおりです。
並べ替えコード:
$('.showcase').isotope({
itemSelector: '.item',
getSortData: {
date: function ($elem) {
return $elem.attr('data-timestamp');
}
},
sortBy: 'date',
sortAscending: true,
masonry: {
columnWidth: 1
}
});
フィルタ メニュー コード:
// filter container
var $container = $('.showcase');
$container.isotope({
itemSelector: '.thumb'
});
var $optionSets = $('.filter'),
$optionLinks = $optionSets.find('a');
$optionLinks.click(function () {
var $this = $(this);
// don't proceed if already selected
if ($this.hasClass('selected')) {
return false;
}
var $optionSet = $this.parents('.dropdown');
$optionSet.find('.selected').removeClass('selected');
$this.addClass('selected');
// make option object dynamically, i.e. { filter: '.my-filter-class' }
var options = {},
key = $optionSet.attr('data-option-key'),
value = $this.attr('data-option-value');
// parse 'false' as false boolean
value = value === 'false' ? false : value;
options[key] = value;
if (key === 'layoutMode' && typeof changeLayoutMode === 'function') {
// changes in layout modes need extra logic
changeLayoutMode($this, options)
} else {
// otherwise, apply new options
$container.isotope(options);
}
return false;
});
これが機能するjsfiddleです:http://jsfiddle.net/3ngjL/2/
これら 2 つのコード ブロックは別々に機能しますが、一緒には機能しません。誰かが洞察を提供できるなら、私はそれを感謝します。