2010-04-21 163 views
1

我已经构建了基于superfish的顶级菜单,但菜单中显示的项目数量很大。顶部菜单上还有很多jQuery。现在到了这个问题,每次我加载任何有菜单的页面时,浏览器(ie7)都觉得它看起来像是在加载页面时锁定它自己约1-2秒。我确定顶层菜单是问题所在,我想提高页面的性能(除了删除菜单和删除菜单项) 我使用了firebug来查看哪些调用占用了大部分时间,我的电话是标准的jquery或superfish。 顶层菜单是一个ascx控件。 他们有没有什么好的方法让页面首先加载,然后菜单或任何其他商品的想法来提高性能?Javascript性能问题

+0

页面初始化应该没有理由需要1-2秒。 整个代码都必须有一些低效率。 @Robert哈维的想法是一个好 – 2010-04-21 19:55:38

+0

有可能是对的多,多到DOM元素运行太多的js代码。我试图在做某些jQuery时“缓存”dom元素。但还不够,现在以提高性能 – Daniel 2010-04-22 05:48:53

回答

1

您是否尝试过所有的脚本代码(JavaScript中,jQuery的)移动到页面的底部,就在</html>标记之前?

+0

我搬到了所有相关的顶部菜单之前下来的JS,它似乎didnt帮助可言,它必须是最终的身体和结束之间html标签? – Daniel 2010-04-22 05:44:40

+0

在''标签没有问题之前,但您需要移动*全部*标签,而不仅仅是与菜单相关的东西。这个想法是让网页在Javascript/jQuery执行之前(至少部分)呈现。 – 2010-04-22 14:37:27

0

你有没有想过加载菜单只有一次?不久前,我们遇到了同样的问题,即每次页面刷新时都重新加载菜单。

我们做什么,我们尽量减少页面刷新和力量我们的大部分网页提交/通过$.ajax检索数据。

我们只刷新页面时,它是必要绝对

+0

因为它现在需要很长时间来开发顶级菜单来加载一次:/但好主意,下次虽然 – Daniel 2010-04-22 05:47:18