【问题标题】:Jquery, Navigation bar and toggle() issuesJquery、导航栏和切换()问题
【发布时间】:2014-02-15 23:04:29
【问题描述】:

好的,所以我有一个导航栏,其中包含使用 inline-block 样式显示的链接列表。我使用了媒体查询,因此当我将屏幕调整为更小的尺寸时,如果列表不再适合栏,它会转换为下拉菜单,并带有一个按钮,有助于打开和关闭下拉菜单的可见性。该按钮使用这个简单的 jquery 代码工作:

$(document).ready(function() {
    $("#nav-menu").click(function(){
        $("#nav-links").slideToggle("down");
    });
});

(#nav-menu 是按钮的id,而#nav-links 是列表的id)

我的问题是,当我单击菜单按钮并隐藏下拉菜单时,然后我将浏览器屏幕调整为正常宽度,它保持隐藏状态。当我将其调整回正常宽度时,如何强制链接列表保持可见,无论我是打开还是关闭下拉菜单?如果其他地方有论坛,请原谅我没有检查,我的网站需要完成的时间不多了。

对于一个视觉示例,请查看 Impactbnd.com,查看顶部的导航栏,然后调整浏览器大小并查看下拉菜单,让您了解我想要完成的工作。

【问题讨论】:

    标签: jquery html drop-down-menu navigation toggle


    【解决方案1】:

    当超过一定宽度时,使用 resize() 来显示()你的下拉菜单。

    $( window ).resize(function() {
        if($( window ).width() >= XXX){
            $("#nav-links:hidden").show();
        }
        else{
            $("#nav-links:visible").hide();
        }
    });
    

    【讨论】:

    • 整洁!我知道它必须看起来像这样,但我试图弄清楚语法(对不起,没有太多使用 jquery)。现在唯一的小问题是,当我重新调整大小时,下拉菜单会在我按下菜单按钮之前自动打开。当我调整到指定宽度以下时,我尝试了类似的代码,但没有运气......
    • 我试过了,但没有多大帮助。我也想过这样做,但无论窗口大小如何,它都会隐藏容器(不知道为什么它会那样做,但确实如此)。无论如何,由于时间关系,我决定制作第二个列表并使用媒体查询改变它的可见性。不过感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-18
    • 2016-02-13
    • 1970-01-01
    • 1970-01-01
    • 2022-12-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多