jquery .hide()函数 - 隐藏移动设备,显示桌面

时间:2013-08-09 19:08:17

标签: javascript jquery css html5

我会尽力设置我的方案,以便您能够理解我的问题。

我的网站目前正在利用css媒体查询跨越屏幕分辨率。我有一个主要的向下钻取菜单,无法在页面加载时隐藏,否则菜单将无法正确计算它的高度,并且无法正常显示。

作为一种在需要时仍能隐藏此菜单的方法,我找到了隐藏菜单的解决方法,但仍允许菜单正确计算页面加载时的高度。

$(document).ready(function () {
    $(".hide-menu").hide();
    var $drillDown = $("#drilldown");
});

这对于不需要在移动和桌面分辨率上最初显示主菜单的页面非常有用。但是,对于我的产品页面,此解决方案不起作用。我需要菜单在加载时隐藏移动分辨率,但也会在加载时显示桌面分辨率。谁能想到一个有效的解决方案?我很难过。这是HTML:

<div class="drill-down-wrapper hide-menu hide-on-load hide-pd-page">
    <div id="drilldown-breadcrumbs" class="breadcrumbs skin-colorful"></div>
    <div id="drilldown" class="skin-colorful">
        <!-- #Include virtual="Menu.txt" -->
    </div>
</div>

2 个答案:

答案 0 :(得分:3)

使用媒体查询根据屏幕分辨率隐藏和显示菜单。

答案 1 :(得分:0)

而不是jQuery,尝试使用CSS来显示/隐藏元素。您可以使用display规则执行此操作。仅作为一个例子:

.hide-menu-on-load {
  display: none;
}

@media screen and (max-width: 680px) {
  .hide-menu-on-load {
    display: block;
  }
}

注意:display: none已从页面流中删除了该元素。 visibility: hidden将元素的流保留在页面上,但只是将其从视图中删除

相关问题