我正在使用http://masonry.desandro.com/methods.html#layout之类的布局,想知道是否有一种方法可以使他们一次仅激活一个项目。这样,当您扩展一个新项目时,当前打开的项目将恢复为原始形式(删除class =“ is_expanded”)。我对编程很陌生,真的不知道该看哪里,尝试配置How do I remove class from previous selection when clicking additional item?但没有运气

最佳答案

classie.toggle( event.target, 'gigante' );


那就是做魔术的部分-它添加了一个'gigante'类,然后使其变为4 * 4(或其他值)

如果您想一次只扩展一个,则

eventie.bind( container, 'click', function( event ) {
// don't proceed if item was not clicked on
if ( !classie.has( event.target, 'item' ) ) {
return;
}

// change size of item via class
 $('.item').removeClass('gigante'); // add this line
classie.toggle( event.target, 'gigante' );
// trigger layout
msnry.layout();
});


我添加的行所做的是从项目中删除所有“ gigante”类,然后切换将再次将该类添加到项目中。

$('.item')只是每个项目都具有的类。

该答案假定仅将扩展的项目称为“ gigante”。

10-06 07:37