如何确定标签是否具有特定的类和ID

时间:2011-01-26 12:32:11

标签: jquery html css

在页面上有一个包含id和类的正文标记:

<body class="class" id="id">

我正在尝试使用jQuery根据类和id的内容在页面下方进一步提供一些内容。我没有成功,因为它值得,这就是我试图做的事情:

if($('body').is('#id1')){
    if($(this).hasClass('class1')){
        $('ul.nav li.first').html('<h2>Special Title</h2>');
    }else if($(this).hasClass('class2')){
        $('ul.nav li.first').html('<h2>Other Title</h2>');
    }
}else if($('body').is('#id2')){
    if($(this).hasClass('class1')){
        $('ul.nav li.first').html('<h2>Special Header</h2>');
    }else if($(this).hasClass('class2')){
        $('ul.nav li.first').html('<h2>Other Title</h2>');
    }
}

任何人都有快速的方法吗?我在使用jQuery“if”循环时非常糟糕,一直都是。

干杯,

Ť

2 个答案:

答案 0 :(得分:2)

对于记录,这里不需要使用jQuery。

var isId = (document.body.id === someId);
var isClass = (document.body.className.indexOf(someClass) !== -1);

if (isId && isClass) {
     // do something
}

[编辑]

班级检查太可怕了。尝试

var regexp = new RegExp("(^|//s)" + someClass + "($|//s)", "m");
var isClass = (document.body.className.search(regexp) !== -1);

答案 1 :(得分:0)

没关系。对于任何想知道的人,我从未定义$(this)是什么。用$('body')替换它现在可以正常工作。

对不起所有人。继续前进,没有什么可看的!