我正在做一个有几个javascript文件的web项目,特别是在firefox上发现前端响应有点慢。与服务器端相关的因素已被排除,因此我得出结论,它必须与我的javascripts有关。
我目前使用firebug进行调试,使用console.log(),或者在这里和那里注释一些代码
但事实证明这非常耗时!有没有人有其他有效或更好的方法来帮助我?提前谢谢。
的 的 ** * ** * ** 下面@Bill是大部分时间占用的代码的一部分。 Firebug向“mainTabs”报告了一个未定义的错误。但是当我尝试在负载回调中重新声明mainTabs时,它仍然保持不变。 ** * ***
var mainTabs = $("#main-tabs").tabs({
selected: defaultTab,
cache: true, //set tabs to cache the content
load: function(event, ui){
//want to preload the non-active tabs' content
console.log("mainTbas: "+mainTabs.html());
mainTabs.tabs("load", ui.index+1);
}
});
答案 0 :(得分:2)
Firebug有一个脚本分析器,您可以使用它来找出问题所在。它位于Console
标签下,位于All
按钮之前。单击Profile
按钮,然后刷新页面(或执行页面上运行缓慢的操作)。再次单击Profile
按钮可以获得一个表格,告诉您哪些功能花费的时间最多。从那里开始尝试优化。
对于示例代码,您需要先声明mainTabs。这应该有效(至少根据我假设你开始的Preload JQuery UI tabs in the background):
var mainTabs; // declare mainTabs first.
mainTabs = $("#main-tabs").tabs({
selected: defaultTab,
cache: true, //set tabs to cache the content
load: function(event, ui){
mainTabs.tabs("load", ui.index+1);
}
});