我在网站上使用了Smooth Navigation JavaScript菜单,客户抱怨在浏览网站时浏览主导航的样式有所延迟。JavaScript下拉菜单的CSS样式中的延迟
正确的是,当您在CSS启动并且样式正确之前打开页面时,可能会有1秒的延迟。 CSS在页面的顶部,JS在底部,所以我不知道是什么造成这种延迟?
任何帮助将不胜感激。
谢谢。
我在网站上使用了Smooth Navigation JavaScript菜单,客户抱怨在浏览网站时浏览主导航的样式有所延迟。JavaScript下拉菜单的CSS样式中的延迟
正确的是,当您在CSS启动并且样式正确之前打开页面时,可能会有1秒的延迟。 CSS在页面的顶部,JS在底部,所以我不知道是什么造成这种延迟?
任何帮助将不胜感激。
谢谢。
你不需要也不应该使用JavaScript来做一个简单的下拉菜单。
在任何情况下,将类“navv”添加到菜单容器,看看是否解决了这个问题。
更改此:
<div id="nav>
这样:
<div id="nav" class="navv">
为什么它是如此糟糕的脚本?你能建议一个更好的吗? – 2012-02-10 11:29:49
这几天我建议不要使用Javascript,而应该使用CSS3转换来处理动画。一个快速的谷歌发现这个没有JS的下拉菜单的例子:http://shailan.com/demos/css3-transitions-dropdown.html 最多的时候,应该使用JS来切换类的开启和关闭来应用/删除悬停时的样式。 – 2012-02-10 11:43:56
但是旧版浏览器呢?我们JS作为备份? – 2012-02-10 12:55:13
基本上,JavaScript在文档完全加载并处理完Javascript后还需要一些时间。在这段延迟期间,当浏览器试图尽可能快地显示所有内容时,您可以看到显示菜单的“无风格”版本。
最简单的修复方法是以这种方式设置菜单的样式,即“未设置”版本与“样式”设置相同。然后将不会闪烁,并且脚本将在页面完全加载时将其添加为显示较慢的动画。
当浏览该网站时,顺利通航不会马上踢。尝试重新订购脚本标记:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script type="text/javascript" src="scripts/js/ddsmoothmenu.js"></script>
<script type="text/javascript">
ddlevelsmenu.init("ddtopmenubar", "topbar") //ddlevelsmenu.setup("mainmenuid", "topbar|sidebar")
</script>
<script type="text/javascript" src="scripts/js/news.js"></script>
<script type="text/javascript" src="http://cloud.github.com/downloads/malsup/cycle/jquery.cycle.all.latest.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.slideshow').cycle({
fx: 'fade' // choose your transition type, ex: fade, scrollUp, shuffle, etc...
});
});
</script>
这也将采取一致的护理:
Uncaught ReferenceError: $ is not defined news.js:1
Uncaught ReferenceError: jQuery is not defined jquery.cycle.all.latest.js:918
Uncaught ReferenceError: $ is not defined index.php:149
Uncaught ReferenceError: ddlevelsmenu is not defined index.php:158
如何应用该样式? CSS? JavaScript?你有什么尝试? – ManseUK 2012-02-10 11:04:59