Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
&引用;“下一步”-基于散列url的链接。(javascript)_Javascript_Jquery - Fatal编程技术网

&引用;“下一步”-基于散列url的链接。(javascript)

&引用;“下一步”-基于散列url的链接。(javascript),javascript,jquery,Javascript,Jquery,我对javascript有点陌生,有一个链接列表作为菜单,最后一个按钮意味着是下一个按钮,根据您当前所在的页面或散列,谁将进入下一行链接 <li><a class="menu" href="#home"><div>Home</a></li> <li><a class="menu" href="#work">Work</a></li> <li><a

我对javascript有点陌生,有一个链接列表作为菜单,最后一个按钮意味着是下一个按钮,根据您当前所在的页面或散列,谁将进入下一行链接

    <li><a class="menu" href="#home"><div>Home</a></li>
    <li><a class="menu" href="#work">Work</a></li>
    <li><a class="menu" href="#about">About</a></li>
    <li><a class="menu" href="#">Next</a></li>
  • 例如,如果你在工作页面,下一步按钮会将你发送到关于页面,如果你在关于页面,它会将你发送到主页

    我猜它与数组和一些javascript有关,因为它必须实时工作,但不知道如何工作

    希望有人能解释或给我一个提示


    提前谢谢

    这非常简单,不需要任何额外的阵列:

    $("#next").on("click", function (e) {
        e.preventDefault();
        var currentLink = location.hash ? $("a.menu[href=" + location.hash + "]") : null,
            next = currentLink ? currentLink.parent().next() : null;
        if (!next || next.children().attr("id") == "next") {
            next = $("a.menu").first().parent();
        }
        if (next) {
            location.hash = next.children().attr("href");
        }
    });
    
    (我已经给出了“下一步”-链接id
    next
    ,使其易于定位。)

    它的作用是:

    如果
    location.hash
    包含一个值,它将尝试使用相应的
    href
    查找
    a.menu
    元素
    如果找到,它将获得下一个
    LI
    。 如果它没有找到任何内容,或者找到的
    LI
    包含
    a:next
    链接,那么它将获得第一个
    LI

    最后,它将找到的
    LI
    的第一个子项(如果有)的
    href
    值分配给
    location.hash

    请参阅此处的全屏版本以实际查看哈希更改:,并查看完整代码