10

如果单击的 li 元素没有照片类别,我正在尝试创建一个运行代码的 if 语句。

$('div.menu li').click(function(){
    var content = $(this).attr('class');
    if (/* I can't figure out the correct syntax that goes here? */){
        $("div.content_wrapper, div.content").hide();
        $('div.content_wrapper').animate({width: 'toggle'});
        $('div.content_wrapper, div.' + content).show();
        $('div.menu li').removeClass('menuactive');
        $(this).addClass('menuactive');
    }
});
4

3 回答 3

9

只需使用 jQuery 的.is

if(!$(this).is('.some-class')) { // ...

或者,如果您愿意,可以.hasClass

if(!$(this).hasClass('some-class')) { // ...
于 2012-07-01T01:04:03.537 回答
8

使用:not选择器

$("div.menu li:not(.photo)").click(function(){
    $("div.content_wrapper, div.content").hide();
    $("div.content_wrapper").animate({width: "toggle"});
    $("div.content_wrapper, div." + content).show();
    $("div.menu li").removeClass("menuactive");
    $(this).addClass("menuactive");
});
于 2012-07-01T01:03:59.423 回答
3
if(!$(this).hasClass('className')) {
    // clicked element does not have the class
}
于 2012-07-01T01:04:57.030 回答