javascript 调试器v1.0.0.0
直接给出jsDebug.js的代码。
1

/**//*javascript debugger2
*version 1.0.0.03
*author zhaohuinet4
*complete 2008.05.285
*/6
//初始化事件错误处理方法7
window.onerror=function(msg,url,line)8


{9
jsDebug.Console.writeln("---------------------------");10
jsDebug.Console.writeln("script error message "+ msg);11
jsDebug.Console.writeln("script error line " + line);12
jsDebug.Console.writeln("script error from " + url);13
jsDebug.Console.writeln("---------------------------");14

return !jsDebug.debug; /**/////return true 忽略所有错误15
}16

jsDebug=
{17

debug:false /**/////默认忽略错误处理 18
};19

/**/////this just like system.console c#20

jsDebug.Console=
{21

/**/////默认错误信息为空22
errorMsg:"",23

/**/////输出错误信息不换行24

write:function(msg)
{25
if(jsDebug.debug)26

{27

if(!document.body)/**/////非html body内的错误28

{29
this.errorMsg += msg;30
return;31
}32
var console=this.getConsole();33
console.style.visibility="visible";34
if(this.errorMsg.length!=0)35

{36
console.innerHTML += this.errorMsg;37
}38
console.innerHTML += msg;39
}40
},41

/**/////输出错误信息换行42

writeln:function(msg)
{43
this.write(msg+"<br/>");44
},45

/**/////清空错误信息46

clear:function()
{47
if(jsDebug.debug)48

{49
var console=this.getConsole();50
console.innerHTML="";51
console.style.visibility="hidden";52
}53
},54

/**/////默认控制台 null 就是一个显示错误信息的div55
_console:null,56

/**/////创建or返回一个承载错误信息的控制台57

getConsole:function()
{58
if(!this._console)59

{60
this._console=document.createElement("div");61
62
with(this._console)63

{64
style.position="absolute";65
style.height="200px";66
style.width="300px";67
style.overflow="auto";//68
style.paddingLeft="3px";//填充边距69
style.paddingRight="3px";//70
style.fontFamily="Courier New";71
style.fontSize="12px";72
style.color="#008000";73
style.right="10px";74
style.backgroundColor="#FCFCFC";75
style.border="#005FBD 2px solid"; 76
if(jsDebug.Browser.ie)77

{78
style.filter="Alpha(Opacity=80)";79
}80
else81

{82
style.opacity="0.8";83
}84
};85
document.body.insertBefore(this._console,document.body.firstChild);86
}87
return this._console;88
}89
}90

jsDebug.Browser=
{91

/**/////浏览器内部版本号92

getVersion:function()
{93
return window.navigator.appVersion;94
},95

/**/////浏览器的简单名称 如ie:Microsoft Internet Explorer ff:Netscape96

getAppName:function()
{97
return window.navigator.appName;98
},99

/**/////浏览器的代码名 ie和ff都是Mozilla100

getCodeName:function()
{101
return window.navigator.appCodeName;102
},103

/**/////浏览器发送给服务器所包含的信息104

getUserAgent:function()
{105
return window.navigator.userAgent;106
},107

/**/////object.tostring()108
toString:function()109

{110
return this.getAppName() + "\r" + this.getVersion() + "\r" + this.getCodeName();111
}112
};113

/**/////114
var userAgent=jsDebug.Browser.getUserAgent();115
var appVersion=jsDebug.Browser.getVersion();116

/**/////ie117
jsDebug.Browser.ie=(document.all)&&(!jsDebug.Browser.opera);118

/**/////safari119
jsDebug.Browser.safari=userAgent.indexOf("Safari")>=0;120

/**/////opera121
jsDebug.Browser.opera=userAgent.indexOf("Opera")>=0;再要调试的页面添加引用
<script type="text/javascript" src="js/jsDebug.js"></script>
然后设置调试属性为true
<script type="text/javascript">
jsDebug.debug=true;
</script>
这样就可以把错误直接输出了,是不是稍为方便呢?呵呵~~但愿对你有帮助。
此版本只是1.0的,以后会有更加丰富的功能加入,大家一起努力。
添加下载:/Files/raylovelc/jsDebug.rar

浙公网安备 33010602011771号