图9-1
|
|
图9-2
|
图9-3
|
图10-1
|
图10-2
|
图10-3
|
图10-4
|
图10-5
|
命令 |
说明
|
$(id)
|
通过id返回Element。
|
$$(selector)
|
通过CSS选择器返回Element数组。
|
$x(xpath)
|
通过xpath表达式返回Element数组。
|
dir(object)
|
列出对象的所有属性,和在DOM标签页查看该对象的是一样的。
|
dirxml(node)
|
列出节点的HTML或XML的源代码树,和在HTML标签页查看改节点一样。
|
cd(window)
|
默认情况下,命令行相关的是顶层window对象,使用该命令可切换到frame里的window独享。
|
clear()
|
清空信息显示区,和单击按钮Clear功能一样。
|
inspect(object[, tabName])
|
监视一个对象。tabName表示在那个标签页对该对象进行监视,可选值为“html”、“css”、“script”和“dom”。
|
keys(object)
|
返回由对象的属性名组成的数组。
|
values(object)
|
返回由对象的属性值组成的数组。
|
debug(fn)
|
在函数的第一行增加一个断点。
|
undebug(fn)
|
移除在函数第一行的断点。
|
monitor(fn)
|
跟踪函数fn的调用。
|
unmonitor(fn)
|
不跟踪函数fn的调用。
|
monitorEvents(object[, types])
|
跟踪对象的事件。Types的可选值为“composition”、 “contextmenu”、 “drag”、 “focus”,、“form”、“key”、 “load”、“mouse”、“mutation”、“paint”、“scroll”、“text”、“ui”和“xul”。
|
unmonitorEvents(object[, types])
|
不跟踪对象的事件。Types的可选值为“composition”、 “contextmenu”、 “drag”、 “focus”,、“form”、“key”、 “load”、“mouse”、“mutation”、“paint”、“scroll”、“text”、“ui”和“xul”。
|
profile([title])
|
开始对脚本进行性能测试,可选参数title将作为测试结果的标题。
|
profileEnd()
|
结束脚本性能测试。
|
表3
|
console.log('Hello');
|
console.log('当前的参数是:%d',i);
|
图11-1
|
console.log(2,4,window,test,document);
|
图11-2
|
图11-3
|
console.debug('This is console.debug!');
console.info('This is console.info!');
console.warn('This is console.warn!');
console.error('This is console.error!');
|
图11-4
|
console.group('开始分组:');
console.debug('This is console.debug!');
console.info('This is console.info!');
console.warn('This is console.warn!');
console.error('This is console.error!');
console.groupEnd();
|
开始分组:
”。如果需要,我们还可以通过嵌套的方式,在组内再分组。
图11-5
|
console.dir(document.getElementById('div1'));
console.dirxml(document.getElementById('div1'));
|
图11-6
|
图11-7
|
function test(){
console.time('test');
for(var i=0;i<1000;i++){
document.getElementById('div2').innerHTML=i;
//console.log('当前的参数是:%d',i);
}
console.timeEnd('test');
}
|
图11-8
|
console.trace();
|
图11-9
|
函数
|
说明 |
console.log(object[, object, ...]) |
向控制台输出一个信息。可以输入多个参数,输出将已空格分隔各参数输出。
第一参数可以包含格式化文本,例如:
console.log(‘这里有%d个%s’,count,apple);
字符串格式:
%s :字符串。
%d, %i:数字。
%f: 浮点数。
%o -超链接对象。
|
console.debug(object[, object, ...])
|
向控制台输出一个信息,信息包含一个超链接链接到输出位置。
|
console.info(object[, object, ...])
|
向控制台输出一个带信息图标和背景颜色的信息,信息包含一个超链接链接到输出位置。
|
console.warn(object[, object, ...])
|
向控制台输出一个带警告图标和背景颜色的信息,信息包含一个超链接链接到输出位置。
|
console.error(object[, object, ...])
|
向控制台输出一个带错误图标和背景颜色的信息,信息包含一个超链接链接到输出位置。
|
console.assert(expression[, object, ...])
|
测试一个表示是否为true,如果为false,提交一个例外信息到控制台。
|
console.dir(object)
|
列出对象的所有属性。
|
console.dirxml(node)
|
列出HTML或XML Element的XML源树。
|
console.trace()
|
输出堆栈的调用入口。
|
console.group(object[, object, ...])
|
将信息分组再输出到控制台。通过console.groupEnd()结束分组。
|
console.groupEnd()
|
结束分组输出。
|
console.time(name)
|
创建一个名称为name的计时器,计算代码的执行时间,调用console.timeEnd(name)停止计时器并输出执行时间。
|
console.timeEnd(name)
|
停止名称为name的计时器并输出执行时间。
|
console.profile([title])
|
开始对脚本进行性能测试,title为测试标题。
|
console.profileEnd()
|
结束性能测试。
|
console.count([title])
|
计算代码的执行次数。titile作为输出标题。
|
表4
|
<script language="javascript" type="text/javascript" src="/路径/firebug.js"></script>
|
<script language="javascript" type="text/javascript" src="/路径/firebugx.js"></script>
|
if (!window.console || !console.firebug)
{
var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
window.console = {};
for (var i = 0; i < names.length; ++i)
window.console[names[i]] = function() {}
}
|
<html debug= "true"
>
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html debug='true'> <head> <title>简单的例子</title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <style> #div1{background:red;width:100px;height:100px;} #div2{background:blue;width:100px;height:100px;margin:10px;padding:10px;border:5px solid black;color:white;} #div3{background:yellow;width:50px;height:50px;margin-left:25px;} </style> <script language="javascript" type="text/javascript" src="firebug/firebug.js"></script> </head> <body scroll="no"> <div id="div1">方块一</div> <div id="div2" onclick='test()'>方块二</div> <script> document.getElementById('div1').innerHTML+='<div id="div3">方块三</div>'; /* console.log('Hello'); console.log(2,4,window,test,document); console.group('开始分组:'); console.debug('This is console.debug!'); console.info('This is console.info!'); console.warn('This is console.warn!'); console.error('This is console.error!'); console.groupEnd();*/ // console.dir(document.getElementById('div1')); // console.dirxml(document.getElementById('div1')); function test(){ console.time('test'); for(var i=0;i<1000;i++){ document.getElementById('div2').innerHTML=i; //console.log('当前的参数是:%d',i); } console.timeEnd('test'); console.trace(); } </script> </body> </html>end