菜单

manbetx2.0手机版10分钟学会前端调节和测量试验利器——FireBug

2019年9月22日 - Html/Html5

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浏览器。安装完毕后用它访问https://addons.mozilla.org/zh-CN/firefox/collections/mozilla/webdeveloper/

步向下图所示页面。点击”加多到Firefox”,然后点击”立刻安装”,最终重复启航Firefox浏览器就可以实现安装。

manbetx2.0手机版 1

主面板

设置到位之后,在Firefox浏览器的地方后方就能够有多个小虫子的Logomanbetx2.0手机版 2。单击该Logo后就可以实行Firebug的调控台,也能够经过急忙键<F12>来开发调节台。使用Ctrl+F12飞快键能够使Firebug独立张开贰个窗口而不占用Firefox页面底部的半空中。

manbetx2.0手机版 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。

manbetx2.0手机版 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>

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

manbetx2.0手机版 5

Firebug调整台还提供了其它成效,例如检查实验函数实行时间、新闻分组、测量试验驱动、追踪、计数以及查看Javascript轮廓等。越多材质能够访谈http://getfirebug.com/logging.

4.面板内的子菜单

支配台面板内有一排子菜单,分别是破除、保持、概略、全部等。

manbetx2.0手机版 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<一千;i++) for(var j=0;j<1000;j++); } function f2(){ for(var i
=0;i<一千;i++) for(var j=0;j<一千;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<1000;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>

开发页面,突显四个开关:

manbetx2.0手机版 7

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

manbetx2.0手机版 8

从上海体育场面中能够看来,出现了一行字,“轮廓搜聚焦。再一次点击“概略”查看结果。”,接着,依次单击“实行循环1”、“实践循环2”、“实践循环3”四个按键各一次,天公地道新单击“概况菜单”,就能够看出如下图所示结果:

manbetx2.0手机版 9

能够观察Firebug展现出了至极详尽的报告。包涵每一个函数的函数名、调用次数、占用时间的比重、占用时间、时间、平均时间、最小时间、最大时间以及各省的文件的行数等消息。

5.Ajax调试

决定台面板也可用于Ajax调节和测量检验,在必然水平上得以代替网络面板。比方小编展开二个页面,能够在Firebug调整台看到这一次Ajax的Http乞求头信息和服务器响应头消息。如下图,它会来得出本次使用的Ajax的GET方法、地址、耗费时间以及调用Ajax央求的代码行数。最入眼的是有5个标签,即参数、头音讯、响应、HTML、Cookies.第一个标签用于查看传递给服务器的参数;第一个标签用于查看响应头音讯和伸手头音讯;第多个标签用于查看服务器返回的剧情;第多个标签则是翻开服务器再次来到的HTML结构;第五个标签用于查占星应的Cookies。

manbetx2.0手机版 10

若果看不到任何音讯的产出,只怕是将此功用关闭了,能够单击“调控台”旁边的下拉箭头,将“展现XMLHttpRequests”前边的勾勾选上就可以。

manbetx2.0手机版 11

HTML面板

1.翻看和修改HTML代码

Html面板的强有力之处就是能查看和修改HTML代码,并且那些代码都是透过格式化的。上边以作者的三个浏览器主页来做疏解。

manbetx2.0手机版 12

在页面蟹深紫部分代表成分自己,土黄表示padding部分,紫海洋蓝表示margin部分。同期能够实时地抬高、修改和删除HTML节点以及品质,如下图所示。别的,单击script节点还足以一贯查看脚本,此处的脚本无论是内嵌在HTML中依然外表导入的,都足以查看到。一样那也适用于<style>标签内嵌可能导入的CSS样式和动态创设HTML代码。

manbetx2.0手机版 13

在HTML调控台的右边手能够见到任何页面当前的文书档案结构,能够经过单击“+”来实行。当单击相应的因素时,右左边板中就能够来得出当下因素的体制、布局以及DOM消息。而当光标移动到HTML树中相应成分上时,下面页面中相应的要素将会被高亮显示。

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

manbetx2.0手机版 14

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

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

2.查看(Inspect)

动用查看(Inspect)成效,能够长足地查找到有些成分的HTML结构,如图:

manbetx2.0手机版 15

当单击”Inspect”开关后,用鼠标在网页上圈套选八个元素时,成分会被多少个黄色的范围住,同一时候下边包车型大巴HTML面板中相应的HTML树也会进展而且高亮显示。再一次单击后就能够退出该方式,并且尾部的HTML树也保持在那么些状态。通过这一个作用,能够便捷搜索页面内的要素,调节和测量试验和查究相应代码非常平价。刷新网页后,页面突显的依然是用Inspect选中的区域。

HTML面板下方的“编辑”按键能够用来直接编辑选中的HTML代码,而前边显示的是现阶段因素在一切DOM中的结构路线。

3.翻看DOM中被剧本退换的有的

透过JavaScript来更换样式属性的值能够做到部分动画效果。张开页面后,利用查看(Inspect)作用来挑选相应的HTML代码,比如,选中“要闻”,如下图所示:

manbetx2.0手机版 16

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

manbetx2.0手机版 17

经过上航海用体育地方能够看看,HTML查看器会将页面上转移的剧情页记录下来,并以水草绿高亮代表。有了那些功能,网页的暗箱操作将透顶成为历史。大家得以行使该意义查看别的网址的动画效果是什么样贯彻的。

4.翻看和改形成分的体裁

在右臂的样式面板中,显示了此成分当前颇具的体制。全数的体制都能够实时地剥夺和修改,如下图所示,通过在”text-align:center”前单击会出现禁用的标记,那样就可以禁止使用此准则。通过一贯在体制value值上单击就足以修改。

manbetx2.0手机版 18

单击“布局”面板就能够知到此因素具体的布局属性,那是二个正式的盒模型。通过“布局”面板,能够很轻便地察看元素的偏移量、外边距、边框、内边距和要素的莫斯中国科学技术大学学、宽度等音信,如下图所示:

manbetx2.0手机版 19

5.查看DOM的信息

单击“DOM”面板后能够看出此因素的详实的DOM音讯以及函数和事件,如下图所示:manbetx2.0手机版 20

CSS、DOM和网络面板

那3个面板相对于前方2个面板相比次要,CSS和DOM面板与HTML面板中右边的面板功用相似,但不比HTML面板灵活,由此一般选择得比相当少。

CSS面板特有的二个效益正是能够分别详细查看页面中内嵌以及动态导入的样式。如下图所示:

manbetx2.0手机版 21

单击CSS面板后即可分级查占卜应的体制。此处张开的体裁都以由此格式化的,适合于上学CSS的代码格式和专门的学问。

而在网络面板中,相对有局地强大的职能,举个例子打开某些网址首页,Firebug展现效果如下图所示:

manbetx2.0手机版 22

该页面能够监视各类成分的加载情形,富含剧本,图片等的深浅以及加载用时等,对于页面优化有着非常主要的意思。

别的,顶上部分还足以分类查看成分的HTML、CSS、JS等的加载情形,使分析从而灵敏。

  脚本面板

本子面板不仅能够查看页面内的脚本,况兼还大概有庞大的调弄整理功效。

在剧本面板的左侧有“监察和控制”、“仓库”和“断点”八个面板,利用Firebug提供的设置断掉的效果与利益,能够很方便地调节和测试程序,如下图所示:

manbetx2.0手机版 23

1.静态断点

比方test.html文件,代码如下:

XHTML

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; <html
xmlns=”http://www.w3.org/1999/xhtml"&gt; <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行那句代码前面单击一下,那它前面就能够产出三个鲜黄的圆点,表示此处已经被安装了断点。此时,在右臂断点面板的断点列表中就应运而生了刚刚设置的断点。如若想一时禁止使用有些断点,能够在断点列表中去掉有些断点的日前的复选框中的勾,那么此时左臂面板中相应的断点就从红暗褐产生了红灰色色了。

manbetx2.0手机版 24

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

manbetx2.0手机版 25

那时候JavaScript内容上方的manbetx2.0手机版 26八个开关已经变得可用了。它们各自代表“继续实施”、“单步进入”、“单步跳过”和“单步退出”。

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

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

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

单步退出<shift+F11>:允许恢复生机脚本的实践,直到下四个断点甘休。

单击“单步步向”开关,代码会跳到下一行,展现效果如下:

manbetx2.0手机版 27

manbetx2.0手机版 28

从上海体育场所能够见见,当鼠标移动到“lab”变量上时,就足以展示出它的剧情是四个DOM成分,即“div#messageLabel”。

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

manbetx2.0手机版 29

2.法规断点

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

manbetx2.0手机版 30

最后单击页面包车型地铁“Click
Here”开关。能够开掘,脚本在“arr==5”这几个表达式为真时停下了,由此“5”以及未来的数字未有展现到页面中。下图分别是常规机能和安装了条件断点之后的来得效果相比较:

manbetx2.0手机版 31manbetx2.0手机版 32

资源

飞速键:按<F12>能够长足开启Firebug,假如想获取完整的急忙键列表,能够访谈http://getfirebug.com/wiki/index.php/Keyboard_and_Mouse_Shortcuts.

主题素材:假使设置进度中遇见了费劲,能够查阅Firebug的Q&A,网站为http://getfirebug.com/wiki/index.php/FAQ.

Firebug插件:Firebug除了本身庞大的成效之外,还会有基于Firebug的插件,它们用于扩张Firebug的效应。譬如Google公司支付Page
Speed插件,开采职员可以运用它来评估他们网页的属性,并获取有关怎样创新质量的提出。Yahoo集团开支的用来检验页面全部质量的YSlow和用来调试PHP的FirePHP。还也有用于调节和测验Cookie的Firecookie等。

总结

透过本文的上学,读者能够精晓Firebug的基本成效。Firebug已经日趋改为二个调理平台,而不唯有是四个简便的Firefox扩张插件。学好Firebug能给以后的学习和做事提供一定的佑助。

参谋文献:《锋利的JQuery(第2版)》

1 赞 3 收藏 1
评论

manbetx2.0手机版 33

相关文章

发表评论

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

网站地图xml地图