2014-02-15 76 views
1

好吧,所以我有一个导航栏,其中包含使用内嵌块样式显示的链接列表。我使用了媒体查询,因此,当我将屏幕缩小到更小尺寸时,如果列表不再适合放在条上,它会转换为下拉菜单,并有一个按钮帮助切换下拉菜单的可见性。按钮的工作原理采用这种简单的jQuery代码:Jquery,导航栏和切换()问题

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

(#导航菜单是按钮的ID,而#导航链接的列表中的id)

我的问题是,当我点击菜单按钮并隐藏下拉菜单,之后我将浏览器屏幕调整为正常宽度,并保持隐藏状态。无论我是否离开下拉菜单,我如何强制链接列表保持可见状态,当我将其重新调整到正常宽度时?请原谅,如果有其他地方有论坛,我没有检查,我没有太多时间在我的网站需要完成之前。

有关视觉示例,请查看impactbnd.com,查看顶部的导航栏,然后调整浏览器大小并查看下拉菜单,让您了解即时通讯工具尝试完成的内容。

回答

0

当超过某个宽度时,使用resize()显示()您的下拉菜单。

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

整齐!我知道它必须看起来像这样,但我想弄清楚语法(对不起,没有使用jQuery很多)。现在唯一的小问题是,当我重新调整大小时,甚至在按下菜单按钮之前,下拉菜单会自动打开。我试过这个类似的代码,当我调整大小低于指定的宽度,但没有运气... – OzzyTheGiant

+0

更新与可能的修复检查在这里http://jsbin.com/xuhamala/1/ – Wilmer

+0

我试过了,但没有太大的帮助。我也考虑过这样做,但不管窗口大小如何,它都将容器隐藏起来(不知道为什么会这样做,但它确实如此)。无论如何,因为时间的关系,我决定创建第二个列表并使用媒体查询改变它的可见性。感谢您的帮助。 – OzzyTheGiant