我正在使用j query Mega menu,当我的页面加载时,它会首先显示所有菜单(包括子菜单),因为它呈现的瞬间,然后子菜单消失,它看起来像一个普通的水平男人。它最终加载并看起来很合适,但它非常分散注意力,看起来有点奇怪。我可以在上面的示例页面上复制它。
它几乎就像试图在渲染后立即隐藏菜单一样
有没有人知道如果没有这种跳跃的增量渲染,是否有办法让这个菜单加载“更干净”?
答案 0 :(得分:4)
如果您使用$ .ready()包装器来调用初始化程序,它将等到整个页面完全加载后才能准备好菜单。您有两个选择:
在初始化之前使用CSS隐藏菜单。
在标记后立即初始化菜单。
以下是一个例子:
<ul id="menu">
<li>...</li>
... giant menu ...
</ul>
<script type="text/javascript">
$('#menu').giantMenu();
</script>
修改:更多...
理想的是禁用javascript并查看页面的外观。您不应该依赖javascript来使您的页面看起来正常。它可能就像添加Mega Menu在初始化期间添加的几个类一样简单。
答案 1 :(得分:0)
这称为FOUC,如果您首先通过css正确设置菜单样式,则可以避免这种情况。这样,浏览器需要一段时间才能加载所有必需的.js文件。