JQuery:确定某个IDed元素是否是第一个具有某个类的元素?

时间:2013-06-25 03:16:38

标签: jquery

<div id="welcome" class="right"></div>
<div id="visit_us" class="right"></div>
<div id="our_products" class="right"></div>

函数传递一个ID,我需要知道它是否是第一个具有“right”类的第一个元素。所以“欢迎”是真的,而其他人则是假的。 我以为这可能会这样做:

function highlightElement(el){
   $(el + ":eq(.right:first)")
}

但没有骰子(或者至少它似乎没有正确地做到这一点)。有什么建议吗?

4 个答案:

答案 0 :(得分:2)

你可以尝试

$(el).is('.right:first')

可能在if声明中

if($(el).is('.right:first')){
    console.log('is first')
}

演示:Fiddle

注意:您需要在此处传递ID选择器,否则需要前缀#

答案 1 :(得分:1)

$(".right:first");

应该这样做

这将允许您直接在返回的元素上添加您想要的任何突出显示样式。

例如:

$(".right:first").addClass("highlighterClass");

答案 2 :(得分:0)

根据您的说明,问题是el仍然需要id指示符(#)才能使选择器工作:

function highlightElement(el){
   $("#" + el + ":eq(.right:first)")
}

答案 3 :(得分:0)

也许你可以将它们与第一个元素的id相匹配:

this.id === $(".right:first").attr("id")

(其中一种方法)

完整代码:

function highlightElement(el){
   alert(el === $(".right:first").attr("id")) //or just hard-code the id! :)
}

如果id匹配,这将返回true:)

演示:http://jsfiddle.net/hungerpain/LZWJa/