javascript - 打开网站的另一个页面后保持 jquery 下拉菜单打开

标签 javascript jquery html css ajax

我通过鼠标单击有一个下拉菜单。当我单击某个“下 zipper 接”时,我网站的另一个页面正在打开,但菜单已关闭。我需要保持它打开,实际的“下 zipper 接”应以粗体显示。

这是我所拥有的示例 http://jsfiddle.net/dmitry313/dfgjx22j/1/

HTML:

<a href="javascript:void(0);" id="click1" class="clickme">Click me 1</a>
<ul id="menu_list" style="display:none">
    <li><a href="#">Dropdown link</a></li>
    <li><a href="#">Dropdown link</a></li>
</ul>
<br><a href="javascript:void(0);" class="clickme">Click me 2</a>
<ul style="display:none">
    <li><a href="#">Dropdown link</a></li>
    <li><a href="#">Dropdown link</a></li>
</ul>

这里我重定向到网站的另一个页面:

<li><a href="#">Dropdown link</a></li>

AJAX:

$(document).ready(function(){
    var toggleClick = function(){
        var divObj = $(this).next();
        var nstyle = divObj.css("display");

        if(nstyle == "none"){
            divObj.slideDown(false,function(){
                $("html").bind("click",function(){
                    $("html").unbind("click");
                });
            });
        }
        else {
            divObj.slideUp(true,function(){
                $("html").bind("click",function(){
                    $("html").unbind("click");
                });
            });
        }
    };
    $(".clickme").click(toggleClick);
});

感谢您的帮助!

最佳答案

为您的外部下 zipper 接 href 提供一个额外的主题标签参数

<a id="dropdown-id" href="http://www.yourpage/#dropdown-link-name">Dropdown link</a>

同时为您的下 zipper 接指定一个唯一的 ID

为下拉菜单 ul 指定一个唯一的 ID 名称

<ul id="sub-level-1" style="display:none">

当新页面加载时,检查url中是否包含文本#dropdown-link-name,如果包含,则将下拉元素的样式设置为display:block

$(document).ready(function () {
    if (window.location.href.indexOf("#dropdown-link-name") > -1) {
        $('#dropdown-class-name').closest("#sub-level-1").css("display","block");
    }
});

通过这种方式,您必须为每个子菜单 block 创建一个新的 jquery 就绪函数。我不能给你一个 jsfiddle,但我在本地测试过它并且它有效。

关于javascript - 打开网站的另一个页面后保持 jquery 下拉菜单打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26088145/

相关文章:

javascript - Bootstrap Datetimepicker 不在文本字段中显示日期

javascript - 如何用后面的vb.net代码读取HTML5 textarea文本

html - 将社交图标与文本 CSS 对齐在同一行

javascript - 直接在 html 文件中包含 prototype.js 代码

javascript - 使用Jquery进行跨域Ajax调用

javascript - 检查二维数组中是否存在大于数字的值

javascript - 网站现有Leaflet map 的存取方法

javascript - Jquery Validate 并不总是返回 true

javascript - Firefox 中的 CSS3 淡入效果?

javascript - 如何在同一个谷歌地图上创建多个多边形?