我最终把一个表转换成了div...但是,在这样做的过程中,我需要重写一个函数,并且我遇到了一些问题...我试图实现$(this).closest('div'),但它并没有像我想象的那样做……还在读,但如果有人知道解决方案,我会是一个快乐的野营者...
基本上,当我单击一个链接时,它会过滤表格,使其只显示具有与链接的类匹配的类的行……
这是代码,它最初是用来筛选表的……
<a href="#" class="dairy">Dairy</a>
<a href="#" class="meat">Meat</a>
<a href="#" class="vegetable">Vegetable</a>
$('a').click(function(evt){
var myId = $(this).attr('class');
$('tr').each(function(idx, el){
if ($(el).hasClass(myId))
{
$(el).show();
}
else
{
$(el).hide();
}
});
});此后,我将表更改为div:
<div id="primary-div">
<div class="child dairy">
<div class="title">Title</div>
<div class="text">Lorem ipsum</div>
</div>
<div class="child dairy">
<div class="title">Title</div>
<div class="text">Lorem ipsum</div>
</div>
<div class="child meat">
<div class="title">Title</div>
<div class="text">Lorem ipsum</div>
</div>
<div class="child vegetable">
<div class="title">Title</div>
<div class="text">Lorem ipsum</div>
</div>
</div>就像我说的,我还在找,但我非常不成功...
发布于 2009-12-11 14:29:12
为了方便起见,这里有一个优化版本,它利用了jQuery链接和end()方法:
$('a').click(function(e){
$("div#primary-div > div")
.not('.' + this.className).hide().end()
.filter('.' + this.className).show();
return false;
});https://stackoverflow.com/questions/1885661
复制相似问题