Yii MVC の無限スクロールを使用した製品リストがあります。ユーザーエクスペリエンスを向上させるために2つのレイアウトモードを実装しました
$(".layouts .list").click(function () {
jQuery(function() {
var jQuerycontainer = jQuery('.items');
jQuerycontainer.find('.view ').each(function() {
jQuery(this).addClass('large');
});
jQuerycontainer.isotope({
layoutMode: 'straightDown',
itemSelector: '.view',
straightDown: {
columnWidth: 50
}
});
$(document).ajaxComplete(function() {
jQuery(".layouts .list").click();
});
jQuerycontainer.find('.view').removeClass('small');
jQuery(this).addClass('large');});
return false; });
//-----------------Grid Click Function---------------//
$(".layouts .grid").click(function () {
jQuery(function() {
var jQuerycontainer = jQuery('.items');
jQuerycontainer.find('.view ').each(function() {
jQuery(this).addClass('small');
});
jQuerycontainer.isotope({
layoutMode: 'masonry',
itemSelector: '.view',
masonry: {
columnWidth: 50
}
});
$(document).ajaxComplete(function() {
jQuery(".layouts .grid").click();
});
jQuerycontainer.find('.view').removeClass('large');
jQuery(this).addClass('small');
jQuerycontainer.isotope('reLayout');
});
return false; });
});`
主な問題は、グリッドに切り替えるとアイテムがグリッド スタイルで表示されることですが、リスト モードに戻すと、リストが正しく表示されますが、リストを再クリックすると、一部のアイテムの後に不均一なスペースが表示されます。それに応じて自動的に再配置されます。