我正在尝试编写一个脚本来切换网格和列表组视图。我想利用引导类使代码尽可能简洁。我最终会添加额外的类 col-lg-* 等......并处理 cookie 脚本,但现在,我正在尝试使用 wrapAll 包装一些类,包装一个nwrapper。第一次单击网格视图按钮时,工作正常,之后列表视图每次都可以正常工作,但是我坚持在第二次单击后尝试修复网格视图。也许另一双眼睛可以帮助我看到我做错了什么。
这是我正在处理的演示:Toggle List Grid View。
这是迄今为止的脚本:
$(document).ready(function() {
$('#grid').click(function() {
$('#products').fadeOut(300, function() {
$(this).addClass('row-group').fadeIn(300);
$(this).removeClass('list-group').fadeIn(300);
$('#grid').addClass('disabled');
$('#list').removeClass('disabled');
$('.item').removeClass('list-group-item row');
$('.item').wrap('<div class="col-md-4" />');
$(this).nwrapper({
wrapEvery: 3,
defaultClasses: false,
extraClasses: ['row']
});
$.cookie('list_grid', 'g');
});
return false;
});
$('#list').click(function() {
$('#products').fadeOut(300, function() {
$(this).removeClass('row-group').fadeIn(300);
$(this).addClass('list-group').fadeIn(300);
$('#grid').removeClass('disabled');
$('#list').addClass('disabled');
$('.col-md-4').unwrap(); // unwraps nwrapper above
$('.item').addClass('list-group-item row');
$('.item').unwrap('<div class="col-md-4" />');
$('.inner').nwrapper({
wrapEvery: 2,
defaultClasses: false,
extraClasses: ['col-md-9']
});
$('.list-group-image').wrap('<div class="col-md-3" />');
$.cookie('list_grid', null);
});
return false;
});
});