如何在查询中使用.index()选择元素的索引?

时间:2014-07-18 11:56:43

标签: javascript jquery html5

我需要索引

使用

this.config.curPos = $(this.config.el + ' li div').index($('.focus'));

我总是得到错误的索引。

期望的结果是

ID ="输入用户名和#34; = 0

ID ="输入密码" = 1

我需要避免使用jquery使用ID选择器。

知道如何解决这个问题吗?


<ul>
  <span>
    Email:
  </span>
  <li>
    <div id="input-username" data-href="input-username" class="focusable focus">
      <div class="input" style="position:relative;">
        <span class="text" style="position: relative; left: 0px;">
        </span>
        <div class="cursor" style="position: absolute; left: 0px; top: 0px; display: none;">
        </div>
      </div>
    </div>
  </li>
  <span>
    Password:
  </span>
  <li>
    <div id="input-password" data-href="input-password" class="focusable">
      <div class="input" style="position:relative;">
        <span class="text" style="position: relative; left: 0px;">
        </span>
        <div class="cursor" style="position: absolute; left: 0px; top: 0px; display: none;">
        </div>
      </div>
    </div>
  </li>
</ul>

2 个答案:

答案 0 :(得分:0)

我会使用以下CSS选择器来解决它。

this.config.curPos = $(this.config.el + ' li div.focusable').index($('.focus'));

答案 1 :(得分:0)

我无法评估您的this.config.el是否设置正确。对于您提供的代码,以下内容应该有效。

this.config.curPos = $('.focusable').index($('.focus'));

这是一个示例jsFiddle