如何在jQuery中选择实际的div?

时间:2014-06-13 04:44:09

标签: javascript jquery this

我想从div类“ritmo”的总量中获取一个数组,然后打印它(仅用于现在,它用于其他目的),但我不知道如何选择实际的div位置。我该怎么做?我究竟做错了什么?非常感谢! 代码:

<div class="ritmo" class="r1"></div>
<div class="ritmo" class="r2"></div>
<div class="ritmo" class="r3"></div>
<div class="ritmo" class="r4"></div>
<div class="ritmo" class="r5"></div>
<div class="ritmo" class="r6"></div>

<script>
$(".ritmo").click(function(){
    var ritmo = $(".ritmo");
    $(".ritmo").css("background-color","transparent");
    $(this).css("background-color","red");
    alert(ritmo[this]);
});
</script>

3 个答案:

答案 0 :(得分:2)

获取clicked div的位置,使用index方法,因为index方法是基于zero-idex的,所以你需要在最终结果中加1。

$(".ritmo").click(function(){
    var ritmo = $(this);
    $(".ritmo").css("background-color","transparent");
    $(this).css("background-color","red");
    alert(ritmo.index()+1);
});

Demo

答案 1 :(得分:0)

这部分很好:

var ritmo = $(".ritmo");

现在问题仍然是你想要做的事情吗? 此外,如果您需要多个类,您可以像这样添加它们

class="One Two Three"

只需在它们之间添加一个空格。

现在,如果你需要长度,你可以做到

alert(ritmo.length);

此外,如果您要使用嵌套元素,则必须添加不同的类名来区分或执行此类操作。

var elements = $(this).children();

它将收集div RITMO的所有嵌套CHILDREN

祝你好运我希望这能给你足够的火力来接受你想要完成的任何事情!

答案 2 :(得分:0)

请参阅此内容,将divclass=ritmo的所有var ritmo = $.makeArray($('.ritmo')); 存储到数组中:

makeArray

有关class的更多信息,请点击here

注意:从每个div中移除重复的属性<div class="ritmo r1"></div> 。它应该像

{{1}}