图片 33

10分钟学会前端调试利器

10分钟学会前端调节和测量检验利器——FireBug

2015/09/17 · HTML5,
JavaScript · 1
评论 ·
调试

初稿出处:
惟吾德馨(@Allen_Bryant)   

概述

  FireBug是一个用于网址前端开辟的工具,它是FireFox浏览器的二个恢宏插件。它能够用于调节和测验JavaScript、查看DOM、深入分析CSS、监察和控制网络流量以及开展Ajax交互等。它提供了大约前端开垦须求的任何意义。官方网址:www.getfirebug.com

什么样获得Firebug?

因为它是Firefox浏览器的一个恢弘插件,所以首先要求下载Firefox浏览器。读者能够访问www.mozilla.com下载并安装Firefox浏览器。安装完结后用它访谈

跻身下图所示页面。点击”增加到Firefox”,然后点击”立刻安装”,最终重复起动Firefox浏览器就能够造成安装。

图片 1

主面板

安装完结之后,在Firefox浏览器的地点后方就能够有二个小虫子的Logo图片 2。单击该Logo后即可举办Firebug的调节台,也得以经过快速键<F12>来张开调整台。使用Ctrl+F12连忙键能够使Firebug独立伸开三个窗口而不占用Firefox页面底部的半空中。

图片 3

从上航海用教室中能够看来,Firebug包蕴7个面板:

调整台面板:用于记录日志、概览、错误提醒和实行命令行,同一时间也用于Ajax的调治;

HTML面板:用于查看HTML成分,能够实时地编辑HTML和退换CSS样式,它富含3个子面板,分别是体制、布局和DOM面板;

CSS面板:用于查看全数页面上的CSS文件,能够动态地修改CSS样式,由于HTML面板中一度包蕴了一个CSS面板,由此该面板将非常少用到;

本子面板:用于突显Javascript文件及其所在的页面,也能够用来展现Javascript的Debug调节和测量试验,富含3个子面板,分别是监督检查、仓库和断点;

DOM面板:用于体现页面上的保有指标;

网络面板:用于监视互联网活动,能够扶持查看一个页面包车型客车载入处境,饱含文件下载所攻克的小运和文件下载出错等新闻,也足以用来监视Ajax行为;

Cookies面板:用于查看和调动cookie(供给设置下文能源中所提到的Firecookie)。


 

  调整台面板

1.决定台面板概览

此面板能够用于记录日志,也能够用于输入脚本的命令行。

2.记录日志

Firebug提供如下多少个常用的笔录日志的函数:

console.log:简单的记录日志;

console.debug:记录调节和测量试验音信,况兼附上行号的超链接;

console.error:在消息前显示错误Logo,况兼附上行号的超链接;

console.info:在音讯前展现消息Logo,并且附上行号的超链接;

console.warn:在纤弱钱展现警告Logo,并且附行号的超链接。

在空白的html页面中,向<body>标签中参与<script>标签,代码如下:

JavaScript

<script type=”text/javascript”> console.log(‘this is log
message’); console.debug(‘this is debug message’); console.error(‘this
is error message’); console.info(‘this is info message’);
console.warn(‘this is warn message’); </script>

1
2
3
4
5
6
7
<script type="text/javascript">
  console.log(‘this is log message’);
  console.debug(‘this is debug message’);
  console.error(‘this is error message’);
  console.info(‘this is info message’);
  console.warn(‘this is warn message’);
</script>

进行代码后得以在Firebug中看看下图所示的结果,在此之前习于旧贯了用alert来调节和测量检验程序,然则在Firebug下能够利用console。

图片 4

3.格式化字符串输出和多变量输出

本条效果周围于C语言中的语法,能够在console记录日志的章程里应用。

%s:字符串  %d,%i:数字  %f:浮点数  %o:链接对象

再者,那多少个函数帮衬多少个变量。代码如下:

JavaScript

<script type=”text/javascript”> var
kid=”孩子”,count=”3″,man=”Allen”; var
sport1=”篮球”,sport2=”羽球”,sport3=”网球”;
console.log(“%d个%s在玩游戏”,count,kid);
console.log(count,”个”,kid,”在玩游戏”);
console.log(“%s长于的运动有:”,man,sport1,sport2,sport3);
</script>

1
2
3
4
5
6
7
<script type="text/javascript">
  var kid="孩子",count="3",man="Allen";
  var sport1="篮球",sport2="羽毛球",sport3="网球";
  console.log("%d个%s在玩游戏",count,kid);
  console.log(count,"个",kid,"在玩游戏");
  console.log("%s擅长的运动有:",man,sport1,sport2,sport3);
</script>

运维代码后效果如下图所示:

图片 5

Firebug调节台还提供了其他作用,比如检查测量检验函数施行时间、消息分组、测验驱动、追踪、计数以及查看Javascript概略等。愈来愈多质地可以访问.

4.面板内的子菜单

调整台面板内有一排子菜单,分别是排除、保持、概况、全体等。

图片 6

“清除”用于破除调整台北的内容。“保持”则是把调整新竹的内容保留,就算刷新了依旧还存在。“全部”则是显得整个的音信。后边的“错误”、“警告”、“新闻”、“调节和测量试验音讯”、“Cookies”菜单则是对全体开展了叁个分拣。

“概略”菜单用于查看函数的属性。上面通过多少个例证来演示,代码如下:

JavaScript

<button type=”button” id=”btn1″>试行循环1</button>
<button type=”button” id=”btn2″>实践循环2</button>
<button type=”button” id=”btn3″>实施循环3</button>
<script type=”text/javascript”> var f1=function(){ for(var i
=0;i<1000;i++) for(var j=0;j<1000;j++); } function f2(){ for(var i
=0;i<1000;i++) for(var j=0;j<1000;j++); }
document.getElementById(“btn1”).onclick=f1;
document.getElementById(“btn2”).onclick=f2;
document.getElementById(“btn3”).onclick=function(){ for(var i
=0;i<一千;i++) for(var j=0;j<一千;j++); } </script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<button type="button" id="btn1">执行循环1</button>
<button type="button" id="btn2">执行循环2</button>
<button type="button" id="btn3">执行循环3</button>
<script type="text/javascript">
    var f1=function(){
        for(var i =0;i<1000;i++)
            for(var j=0;j<1000;j++);
    }
    function f2(){
        for(var i =0;i<1000;i++)
            for(var j=0;j<1000;j++);
    }
    document.getElementById("btn1").onclick=f1;
    document.getElementById("btn2").onclick=f2;
    document.getElementById("btn3").onclick=function(){
        for(var i =0;i<1000;i++)
            for(var j=0;j<1000;j++);
    }
</script>

开荒页面,呈现三个按键:

图片 7

开发页面后,先启用Firebug调整台面板,然后单击“轮廓”菜单,如下图所示:

图片 8

从上航海用体育场地中得以看来,出现了一行字,“轮廓采摘中。再一次点击“概略”查看结果。”,接着,依次单击“实行循环1”、“施行循环2”、“推行循环3”八个按键各贰遍,同等对待新单击“概况菜单”,就可以知到如下图所示结果:

图片 9

能够见见Firebug显示出了老大详尽的告诉。包涵种种函数的函数名、调用次数、占用时间的百分比、占用时间、时间、平均时间、最小时间、最大时间以及所在的文书的行数等音讯。

5.Ajax调试

决定台面板也可用来Ajax调节和测量试验,在早晚水准上得以替代网络面板。比方笔者张开叁个页面,可以在Firebug调整台看到本次Ajax的Http央求头消息和服务器响应头音信。如下图,它会来得出此番使用的Ajax的GET方法、地址、耗费时间以及调用Ajax央浼的代码行数。最主要的是有5个标签,即参数、头消息、响应、HTML、Cookies.第贰个标签用于查看传递给服务器的参数;第一个标签用于查看响应头音讯和伸手头音信;第八个标签用于查看服务器再次来到的从头到尾的经过;第多个标签则是翻开服务器再次回到的HTML结构;第七个标签用于查六柱预测应的库克ies。

图片 10

倘使看不到任何消息的产出,恐怕是将此成效关闭了,能够单击“调节台”旁边的下拉箭头,将“呈现XMLHttpRequests”前边的勾勾选上就可以。

图片 11

HTML面板

1.查看和修改HTML代码

Html面板的强硬之处便是能查看和修改HTML代码,而且那么些代码都以因此格式化的。上面以自己的三个浏览器主页来做疏解。

图片 12

在页面暗北京蓝部分代表成分自个儿,金色表示padding部分,粉末蓝表示margin部分。同有时间能够实时地拉长、修改和删除HTML节点以及性能,如下图所示。别的,单击script节点还能直接查看脚本,此处的脚本无论是内嵌在HTML中照旧表面导入的,都可以查阅到。同样那也适用于<style>标签内嵌恐怕导入的CSS样式和动态成立HTML代码。

图片 13

在HTML调控台的侧面能够旁观全体页面当前的文书档案结构,能够经过单击“+”来进展。当单击相应的成分时,侧边边板中就能够议及展览示出目前成分的体裁、布局以及DOM消息。而当光标移动到HTML树中相应成分上时,上面页面中相应的成分将会被高亮呈现。

比方说,将光标移动到一个<P>标签上,突显效果如下图所示:

图片 14

在HTML调控台的左臂能够看出任何页面当前的文书档案结构,能够经过单击“+”来开展。当单击相应的因素时,右左侧板中就能够议及展览示出当下成分的体制、布局以及DOM新闻。而当光标移动到HTML树中相应成分上时,上面页面中相应的要素将会被高亮彰显。

举例,将光标移动到一个<P>标签上,显示效果如下图所示:

2.查看(Inspect)

利用查看(Inspect)效率,能够火速地查找到有个别成分的HTML结构,如图:

图片 15

当单击”Inspect”按键后,用鼠标在网页上入选一个因素时,成分会被三个深紫红的局面住,同期上边包车型地铁HTML面板中相应的HTML树也会进展並且高亮展现。再度单击后就能够退出该方式,并且尾部的HTML树也维持在那些景况。通过那一个成效,能够快捷找寻页面内的成分,调节和测量试验和查究相应代码极度方便。刷新网页后,页面呈现的依然是用Inspect选中的区域。

HTML面板下方的“编辑”开关能够用来直接编辑选中的HTML代码,而背后显示的是时下因素在总体DOM中的结构路线。

3.翻看DOM中被剧本改变的一部分

经过JavaScript来改动样式属性的值可以产生部分动画效果。展开页面后,利用查看(Inspect)功能来摘取相应的HTML代码,举个例子,选中“要闻”,如下图所示:

图片 16

单击“本国”标签后,出现下图所示效果:

图片 17

通过上海图书馆能够看到,HTML查看器会将页面上退换的原委页记录下来,并以白色色高棉亮表示。有了那个效应,网页的潜规则将深透变成历史。大家能够使用该功效查看其余网址的卡通效果是如何贯彻的。

4.翻看和退换成分的体裁

在左手的体制面板中,展示了此成分当前持有的体制。全部的体裁都能够实时地剥夺和修改,如下图所示,通过在”text-align:center”前单击会见世禁止使用的标记,那样就能够禁止使用此法则。通过直接在体制value值上单击就足以修改。

图片 18

单击“布局”面板就能够看出此因素具体的布局属性,那是三个正规的盒模型。通过“布局”面板,能够很轻易地察看成分的偏移量、外边距、边框、内边距和因素的冲天、宽度等音讯,如下图所示:

图片 19

5.查看DOM的信息

单击“DOM”面板后方可观察此因素的详尽的DOM音讯以及函数和事件,如下图所示:图片 20

CSS、DOM和互连网面板

那3个面板相对于前方2个面板相比次要,CSS和DOM面板与HTML面板中左边的面板效用相似,但不比HTML面板灵活,由此一般采纳得比比较少。

CSS面板特有的三个功力正是足以分级详细查看页面中内嵌以及动态导入的体裁。如下图所示:

图片 21

单击CSS面板后就可以独家查占卜应的体制。此处张开的体制都是经过格式化的,适合于学习CSS的代码格式和正规。

而在网络面板中,相对有一点点无敌的法力,举个例子展开有些网址首页,Firebug展现效果如下图所示:

图片 22

该页面能够监视每一类成分的加载景况,富含剧本,图片等的大小以及加载用时等,对于页面优化有着非常主要的意义。

其余,顶端还是能够分类查看成分的HTML、CSS、JS等的加载情状,使分析进而灵敏。

  脚本面板

本子面板不仅可以够查阅页面内的剧本,并且还也许有庞大的调节和测量试验功能。

在本子面板的右边手有“监控”、“仓库”和“断点”四个面板,利用Firebug提供的设置断掉的功力,能够很有益于地调节和测量检验程序,如下图所示:

图片 23

1.静态断点

举例说test.html文件,代码如下:

XHTML

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“; <html
xmlns=”; <head> <script
type=”text/javascript”> function doSomething(){ var lab =
document.getElementById(‘messageLabel’); arrs=[1,2,3,4,5,6,7,8,9];
for(var arr in arrs){ lab.innerHTML+=arr+”<br />” } }
</script> </head> <body> <div> <div
id=”messageLabel”></div> <input type=”button” value=”Click
Here” onClick=”doSomething();”/> </div> </body>
</html>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <script type="text/javascript">
        function doSomething(){
            var lab = document.getElementById(‘messageLabel’);
            arrs=[1,2,3,4,5,6,7,8,9];
            for(var arr in arrs){
                lab.innerHTML+=arr+"<br />"
            }
        }
    </script>
</head>
<body>
    <div>
        <div id="messageLabel"></div>
        <input type="button" value="Click Here" onClick="doSomething();"/>
    </div>
</body>
</html>

运转代码后方可知见下图所示效果。图中加粗并有颜色的行号表示此处为JavaScript代码,能够在此间安装断点。比如在第6行那句代码前边单击一下,那它前面就能够冒出二个孔雀蓝的圆点,表示此处已经被安装了断点。此时,在左边手断点面板的断点列表中就涌出了刚刚设置的断点。借使想不经常禁止使用某些断点,可以在断点列表中去掉有些断点的前头的复选框中的勾,那么此时左边手面板中相应的断点就从红浅黄造成了红浅血牙红了。

图片 24

安装完断点之后,我们就足以调节和测量试验程序了。单击页面中的“Click
Here”按键,能够看出剧本甘休在用谈深红底色标出的那一行上。此时用鼠标移动到某些变量上就可以展现此时那一个变量的value。显示效果如下:

图片 25

那儿JavaScript内容上方的图片 26多少个按键已经变得可用了。它们分别表示“继续试行”、“单步步入”、“单步跳过”和“单步退出”。

继续实行<F8>:当通过断点来终止实行脚本时,单击<F8>就能过来执行脚本。

单步走入<F11>:允许跳到页面中的别的函数内部。

单步跳过<F10>:单击<F10>来直接跳过函数的调用即跳到return之后。

单步退出<shift+F11>:允许恢复生机脚本的实施,直到下一个断点截至。

单击“单步步入”按键,代码会跳到下一行,突显效果如下:

图片 27

图片 28

从上海体育场馆能够看到,当鼠标移动到“lab”变量上时,就足以显得出它的内容是三个DOM成分,即“div#messageLabel”。

这儿将右边手面板切换成“监察和控制”面板,这里列出了多少个变量,满含“this”指针的针对以及“lab”变量。单击“+”能够看看详细的新闻。展现如下:

图片 29

2.条件断点

在“lab.innerHTML+=arr+”<br
/>””那行代码前边的序号上单击鼠标右键,就可以出现设置标准断点的输入框。在该框内输入“arr==5”,然后回车确认,呈现效果如下:

图片 30

谈到底单击页面的“Click
Here”按键。能够开采,脚本在“arr==5”那么些表达式为真时停下了,由此“5”以及后来的数字未有体现到页面中。下图分别是健康职能和装置了原则断点之后的展现效果比较:

图片 31图片 32

资源

快捷键:按<F12>能够快速开启Firebug,倘使想获得完整的飞速键列表,能够访谈.

主题材料:若是设置进度中相遇了不方便,能够查看Firebug的Q&A,网站为.

Firebug插件:Firebug除了本人庞大的效率之外,还恐怕有基于Firebug的插件,它们用于扩张Firebug的职能。比方谷歌企业支付Page
Speed插件,开辟人士能够行使它来评估他们网页的性质,并获得有关如何创新质量的建议。Yahoo公司支付的用来检测页面全体质量的YSlow和用于调节和测验PHP的FirePHP。还会有用于调节和测验Cookie的Firecookie等。

总结

透过本文的求学,读者能够驾驭Firebug的基本效率。Firebug已经慢慢成为一个调理平台,而不光是叁个简约的Firefox增添插件。学好Firebug能给现在的上学和行事提供一定的救助。

参照他事他说加以考察文献:《锋利的JQuery(第2版)》

1 赞 3 收藏 1
评论

图片 33

发表评论

电子邮件地址不会被公开。 必填项已用*标注