4

我在导航中使用标签索引来允许用户通过标签浏览该内容。我遇到的问题是第三个和第四个(六个中的)打开一个模式。一旦该模式打开,用户必须通过导航的其余部分来切换到模式中的字段。我想让模态的表单/元素在返回导航之前捕获所有选项卡,如果不阻止它移回导航元素直到模态关闭。有没有一种简单的方法可以强制下一个选项卡在不使用 javascript 的情况下跳转到模式上的第一个字段?这看起来真的很简单,但我想我怎么会错过一些东西。

提前致谢。

<nav>
    <a tabindex="1" href="#">A</a>
    <a tabindex="2" href="#">A</a>
    <a tabindex="3" href="#" onclick="$('.b').show();">A</a>
    <a tabindex="4" href="#">A</a>
    <a tabindex="5" href="#">A</a>
    <a tabindex="6" href="#">A</a>
    <a tabindex="7" href="#">A</a>
</nav>

<a tabindex="3" href="#" class="b" >B</a>
<a tabindex="4" href="#" class="b" >B</a>
<a tabindex="5" href="#" class="b" >B</a>
<a tabindex="6" href="#" class="b" >B</a>

这是我正在尝试做的一个小的非工作示例:http: //jsfiddle.net/jeffpowrs/KgHtg/1/

4

1 回答 1

0

尝试这样的事情......

http://jsfiddle.net/KgHtg/3/

$(function() {
    $('#menu1').click(function() {
        $('.b').show();
        var currentIndex = $(this).attr('tabindex');
        var greater = $('nav a').filter(function() {
            return $(this).attr('tabindex') > currentIndex;
        }).each(function() {
            $(this).attr('tabindex', parseInt($(this).attr('tabindex'), 10)+4);
        });
    });
});

您可以只更新 tabindex 属性中的值。您必须使用此功能才能在子菜单打开/关闭时进行更新,但您应该了解此操作的要点。

于 2014-06-03T19:42:56.323 回答