在页面加载完成之前显示Superfish子菜单

时间:2012-02-13 17:08:07

标签: jquery css drupal-7 superfish

任何人都知道为什么会这样吗?每当您转到网站上的页面时,子菜单会短暂显示,然后在页面加载完成后消失。我想阻止它发生。这是网址.. http://epsia.marketspacecom.com/

我猜我的CSS存在问题,但我似乎无法确定问题所在:(

5 个答案:

答案 0 :(得分:2)

您可能必须在display:none中定义CSS,而不是像JS那样放弃:{/ p>

.sf-megamenu{
 display:none;
}

答案 1 :(得分:1)

最近我在我的网站上解决了这个问题,我已经通过使用css和jquery解决了这个问题, 解决问题的步骤

1将一个类添加到菜单的coantainer中。 (该类的属性应为overflow:hidden;)

页脚区域的

2在一段时间后使用jquery删除此类。

Forexample

<style>.removehidden{ overflow:hidden;}</style>
<div class="removehidden" id="hidden">
    <div calss="menu">
      <!--- All inside of menu -->
    </div>
</div>

在页脚区域中编写此脚本

<script> 
     setTimeout(function(){ 
       $('#hidden').removeClass('removehidden').addClass(text); 
      },1000);
</script>

答案 2 :(得分:1)

您可以在CSS中添加以下内容


    .yourmenuwrap-class-here .sub-menu{
     display:none;
    }

或以一般方式


    .sub-menu{
     display:none;
    }

此方法会在初始页面加载时关闭子菜单,并在悬停时激活它们。

答案 3 :(得分:0)

缓慢渲染页面会发生这种情况 我发现有几种方法可以避免这种情况:

  1. 在页面加载完成后渲染,以及所有其他初始化内容
  2. 将其渲染到“页面”之外,即左:例如-90000px
  3. 给包装器elm可见性:隐藏; - &GT;渲染它 - &gt;展示它。

答案 4 :(得分:0)

您也可以尝试(它适用于我),在superfish.css上

ul.sf-menu ul#nav  { display:none; ...