jquery 获取元素集的索引值问题

用query通过类来选择元素,但是index索引值却不对,我希望的是按照顺序012345这样,可是sub-nav的li索引又是从0开始
html代码

<ul class="nav nav-pills nav-stacked main-nav" role="tablist">

            <li class="nav-bar">LAYOUT</li>
            <li class="nav-bar">SIGNAL</li>
            <li class="nav-bar">USER</li>
            <li id="sys">SYSTEM SETTING
                <ul class="sub-nav">
                    <li class="nav-bar">SYSTEM TIME</li>
                    <li class="nav-bar">NET SETTING</li>
                    <li class="nav-bar">VERISION INFO</li>
                    <li data-toggle="modal" data-target="#quit">QUIT</li>
                </ul>
            </li>
        </ul>

js代码
$(".nav-bar").click(function(){

    var index=$(this).index();
    console.log(index);
});
阅读 3.6k
3 个回答

index() 方法返回指定元素相对于其他指定元素(同级)的 index 位置

$(".nav-bar").click(function(){
    var index = $(".nav-bar").index(this);
    console.log(index);
});

这段代码试试

$(".nav-bar").click(function(){

    var index=$(this).index(".nav-bar");
    console.log(index);
});

谢邀
如果特别复杂的话,用.each()遍历。然后你想怎么做都可以。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题