我有一段 html,当 JQM 完成它时,它看起来像这样(简化):
<div id="servicesList">
<div id="servicesHeader">Services</div>
<ul data-role="listview" class="ui-listview">
<li id="Serv1" class="serviceLink">Service 1</li>
</ul>
<ul data-role="listview" class="ui-listview">
<li id="Serv2" class="serviceLink">Service 2</li>
</ul>
</div>
此代码是从另一段脚本动态生成的。
每个服务都有一个附加的点击事件,它可以动态地拉入更多数据。理想情况下,我希望能够在单击服务时引用它的索引。这是我当前的代码:
$('.serviceLink').click(function() {
var index = $(this).closest("ul").index();
servAnimate(index);
});
显然,这不起作用,因为拉入的对象数组包括 servicesHeader div。我如何才能只获得父 ul 的数组?本质上,当用户点击服务 1 时,返回的索引应该是 0,而不是 1。现在,索引 0 引用 servicesHeader div。
我也试过这个:
$(this).closest("ul").filter("ul").index();
任何帮助,将不胜感激!
编辑:我应该指定 HTML 是由另一个开发人员的脚本生成的。它可能会改变,也可能保持不变。到目前为止,我唯一的保证是 UL 将保持在同一级别,并且将具有类 serviceLink。
再说一遍,我如何只获取父 UL 的索引,而不管存在哪些其他兄弟元素?