获取父 LI 的索引并使用 <A> jquery 赋值为 href



我正在尝试获取父li的索引,并将其作为锚标记中href的一部分进行分配。现在,我得到的只是我所有锚的a href="#tab-1",而不是#tab-1、#tab-2等。这是我的代码:

<script type="text/javascript">
$(function(){
    $('.jqueryTabs ul li a').attr("href", "#tab" + $(this).parent().index());
});
</script>
<div class="jqueryTabs">
 <ul>
  <li><a href="#">Overview</a></li>
  <li><a href="#">Details</a></li>
  <li><a href="#">Downloads</a></li>
  <li><a href="#">Video</a></li>
  <li><a href="#">Contact Us</a></li>
 </ul>
 <div id="">
 </div>
 <div id="">
 </div>
 <div id="">
 </div>
 <div id="">
 </div>
 <div id="">
 </div>
</div><!-- jqueryTabs -->

您需要在每个选定的a上循环,并获得每个单独的a的父级的值,否则所有的值都相同。

试试这个:

$(function(){
    $('.jqueryTabs ul li a').each(function(i, elm) {
       $(this).attr("href", "#tab" + $(this).parent().index());
    });
});

您可以进行

$(function(){
     $('.jqueryTabs ul li a').each(function(){
         $(this).attr("href", "#tab" + $(this).parent().index());
     });
});

您应该遍历锚点,并为每个锚点获取父LI的索引:

$(function(){
    $('.jqueryTabs ul li a').each(function() {
        $(this).attr("href", "#tab" + ($(this).parent().index() + 1));
    });
});

注意:我添加了"+1"以获得"tab1"、"tab2"。。。index()是基于零的

DEMO

最新更新