我想要做的是创建两个按钮;一个按钮显示数据的平铺视图,另一个显示数据的行视图。我已经设置了代码是这样的:行和平铺视图列表与jquery
dl = $('.data-list'),
sr = $('.sort-row'),
st = $('.sort-tile');
//add cursor to tile icon default
st.addClass('active-tile').css({'cursor':'default'});
//add tile class to data-list
dl.addClass('tile');
//add tile class and remove row
st.click(function() {
if ($(this).hasClass('active-tile')){
$(this).removeClass('active-tile').css({'cursor':'pointer'});
dl.hide().addClass('row').removeClass('tile').fadeIn();
sr.addclass('active-row');
} else {
$(this).addClass('active-tile').css({'cursor':'default'});
sr.removeClass('active-row');
dl.hide().addClass('tile').removeClass('row').fadeIn().css('display','block');
}
});
//add row class and remove tile
sr.click(function() {
if ($(this).hasClass('active-row')){
$(this).removeClass('active-row').css({'cursor':'pointer'});
dl.hide().addClass('tile').removeClass('row').fadeIn();
st.addclass('active-tile');
} else {
$(this).addClass('active-row').css({'cursor':'default'});
st.removeClass('active-tile');
dl.hide().addClass('row').removeClass('tile').fadeIn().css('display','block');
}
});
HTML:
<div class="sort-bar fr">
<span class="sort-tile">Columns</span>
<span class="sort-row">Rows</span>
</div>
<div class="data-list">
<section></section>
<section></section>
</div>
我有它设置,它隐藏了一会儿数据列表,以便可以添加类,然后我添加行以更改数据的样式。
我的原始点是我不完全确定如何在行激活时禁用磁贴按钮,反之亦然。我尝试使用解除绑定,但似乎永久禁用这两个按钮。另一部分是,那里有很多代码,我觉得我不一定有效地做到这一点。任何关于如何减少代码的建议将不胜感激。我觉得在这里使用toggleclass会很好用,但我不完全确定它应该放在哪里。
编辑:有人问了的jsfiddle,我贴一个简单的东西的工作:http://jsfiddle.net/wtyxd/3/
编辑:请注意,如果你点击每个从另一个按钮清除活性,但如果你点击它再一次,它也从中删除活动,并且不显示任何活动?我试图解决这个问题。
你有一个页面或CSS或小提琴 - 这将有很大的帮助 – 2013-03-01 22:19:11
编辑:更新,http://jsfiddle.net/wtyxd/3/ – stepquick 2013-03-01 22:31:54
像这样.row节{ 浮动:剩下; } – 2013-03-01 22:37:40