jquery show,试图用同一个类显示元素

时间:2013-09-12 12:43:47

标签: jquery css

我有几个按钮.modif,其中包含属性标题,每个按钮都有所不同,例如: title="one",然后所有框都有相同的类.box_slide,但我正在尝试显示只有那个同时拥有类box_one并隐藏其他人的人,所有的框都有类.box_slide

事实是所有的盒子都藏着,有人可以告诉我更好的方法。

$('.modif').click(function (){    
    var title = $(this).attr('title'); 
    $('.box_slide').hide();
    $('.box_' + title).show();
});

5 个答案:

答案 0 :(得分:1)

您在说明中提到标题是“box_one”。但是在代码中,你将它作为

 $('.box_' + title).show();

这将导致box_box_one

因此,这可能会导致问题。

下面会按预期工作

$('.box_slide.box' + title).show();

答案 1 :(得分:0)

你应该改变

$('.box_' + title).show();

由此:

$('.box_slide[title=box_' + title + ']').show();

答案 2 :(得分:0)

您可以使用Attribute Starts With Selector \[name^="value"\]来显示所有以box_开头的类的元素并隐藏特定的元素:

$('.modif').click(function (){    
    $("[class^='box_']").show();
    $('.box_slide').hide();
});

答案 3 :(得分:0)

如果我理解你的问题,以下内容应该有效

$('.modif').click(function (){    
    var title = $(this).attr('title'); 
    $('.box_slide').hide();
    $('.box_slide .' + title).show();
});

答案 4 :(得分:0)

使用此功能。

$('.modif').click(function (){    
    var title = $(this).attr('title'); 
    $('.box_slide').hide();
    $('.box_' + title ).show();
});
相关问题