jQuery的,使用连接和数据选择器筛选列表

我有一个列表,当选择一个链接,关联的股利将隐藏。

首先,有没有写代码,以使选择找到相关的按钮,按下数据更简单的方法?

其次,当选择了多个环节,一个是再次点击,这样的例子不胜枚举回默认。 是否有此修复程序?

$(document).ready(function() { $('#show-free').click(function() { if ($('#show-free').hasClass('active')) { $('.book[data-price!="0"]').trigger('show') $(this).removeClass('active'); } else { $('.book[data-price!="0"]').trigger('hide'); $(this).addClass('active'); } }); $('#show-paid').click(function() { if ($('#show-paid').hasClass('active')) { $('.book[data-price="0"]').trigger('show') $(this).removeClass('active'); } else { $('.book[data-price="0"]').trigger('hide'); $(this).addClass('active'); } }); $('#show-new').click(function() { if ($('#show-new').hasClass('active')) { $('.book[data-weeks-on-list="0"]').trigger('show') $(this).removeClass('active'); } else { $('.book[data-weeks-on-list="0"]').trigger('hide') $(this).addClass('active'); } }); $('#show-old').click(function() { if ($('#show-old').hasClass('active')) { $('.book[data-weeks-on-list!="0"]').trigger('show') $(this).removeClass('active'); } else { $('.book[data-weeks-on-list!="0"]').trigger('hide') $(this).addClass('active'); } }); $('.book').on('show', function() { $(this).show('slow'); }).on('hide', function() { $(this).hide('slow'); }) });

--------------解决方案-------------

为了缓解找到与链路相关联的数据使用数据()方法的JQuery可能

$('.book').filter(function(obj){
return obj.data('price') != '0';
}

代替

$('.book[data-price!="0"]')

实际上是更好 - 我怀疑不行。 这只是一个选择。

随着点击功能 - 因为你不是在方法,那么链接的默认行为将被解雇,我会想象会导致链路重置返回false。 我会尝试的点击次数内返回false只是剿此行为。

这是否帮助呢?

分类:jQuery的 时间:2015-03-15 人气:3
本文关键词: jQuery的
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.251 (s). 10 q(s)