使用jquery查找div的索引

时间:2013-07-25 05:37:17

标签: javascript jquery html indexing

这是我的 html 代码:

<div class="more-content">
    <input type="text" />
    <div class="post">post 1</div>
    <div class="post">post 2</div>
    <div class="post">post 3</div>
</div>

这是 jquery

$(".post").click(function () {
    var index = $(this).index();
    alert(index);
});

我不想在尝试获取主div内部div的索引时考虑输入文本。单击帖子3时必须显示2而不是3.如何做???

这里是jsfidle http://jsfiddle.net/NDySY/16/

6 个答案:

答案 0 :(得分:3)

您可以这样使用index()

$(".post").click(function() {
    var index = $(this).index('.post');
    alert(index);
});

Fiddle

答案 1 :(得分:0)

您可以使用:$('.post').index(this)

检查:http://jsfiddle.net/NDySY/18/

答案 2 :(得分:0)

工作演示http://jsfiddle.net/cse_tushar/NDySY/21/

div.post表示只有类post

的div
$("div.post").click(function() {
    var index = $(this).index('div.post');
    alert(index);
});

答案 3 :(得分:0)

在课程发布点击事件获取索引,如下所示:

var index=$('.post').index(this);

答案 4 :(得分:0)

您必须获取帖子的数量,然后通过索引减去它。索引函数还应该有一个选择器的参数,它应该相对于

$(".post").click(function() {
    var index = $(this).index('.post');
    var comp = $('.post').length - index;

    alert(comp);

});

http://jsfiddle.net/NDySY/24/

答案 5 :(得分:0)

你可以这样做。

$(".post").click(function() {

    var eventCreator=this;

    $('.post').each(function(index,value){

        var currentDiv=value;

        if(eventCreator==currentDiv)
        {
        alert(index);
            //Do what ever you want to do with index
        }


    });

});

检查JS小提琴 HERE