------------------------------------------------------------------------------
在使用Gmail的过程中,如果发生网络故障,Gmail 会 alert 一个信息,提醒你检查网络。Gmail是怎样实现的?Jason 在他的 blog 上贡献了一段代码,阐释在使用XMLHttpRequest的时候如何处理超时设定。
callInProgress: function(xmlhttp) {
switch (xmlhttp.readyState) {
case 1: case 2: case 3:
return true;
break;
// Case 4 and 0
default:
return false;
break;
}
}function showFailureMessage() {
alert('uh oh, it looks like the network is down. Try again shortly');
}// Register global responders that will occur on all AJAX requests
Ajax.Responders.register({
onCreate: function(request) {
request['timeoutId'] = window.setTimeout(
function() {
// If we have hit the timeout and the AJAX request is active, abort it and let the user know
if (callInProgress(request.transport)) {
request.transport.abort();
showFailureMessage();
// Run the onFailure method if we set one up when creating the AJAX object
if (request.options['onFailure']) {
request.options['onFailure'](request.transport, request.json);
}
}
},
5000 // Five seconds
);
},
onComplete: function(request) {
// Clear the timeout, the request completed ok
window.clearTimeout(request['timeoutId']);
}
});
由代码可知,其实现是利用 Prototype 1.4.0 新增的 Ajax.Responders 对象。据 jason 说,他是借鉴了AJAX blog 上的点子。
1,Java剖析工具 -- profiler
是一个全功能的 Java剖析工具(profiler),专用于分析J2SE和J2EE应用程序。它把CPU、执行绪和内存的剖析组合在一个强大的应用中。 JProfiler可提供许多IDE整合和应用服务器整合用途。JProfiler直觉式的GUI让你可以找到效能瓶颈、抓出内存漏失 (memory leaks)、并解决执行绪的问题。它让你得以对heap walker作资源回收器的root analysis,可以轻易找出内存漏失;heap快照(snapshot)模式让未被参照(reference)的对象、稍微被参照的对象、或在终结 (finalization)队列的对象都会被移除;整合精灵以便剖析浏览器的Java外挂功能。
下载地址: http://www.ej-technologies.com/download/overview.html
![](https://p-blog.csdn.net/images/p_blog_csdn_net/robinhf/o_jprofiler.jpg)
2,冗余代码检查 -- Simian
Simian UI 是一个用来发现重复代码的eclipse插件,对于改善设计,消除冗余代码很有帮助。
安装方法:使用eclipse的Help->Software Update进行安装。站点地址为:http://www.integility.com/eclipse/
安装后,按照提示重新启动eclipse。在希望进行分析的项目上点击右键,选择Simian->Add Simian to this project,就可以为该项目进行代码检查。
![](https://p-blog.csdn.net/images/p_blog_csdn_net/robinhf/o_simian.jpg)
3,浏览器端调试工具(IE) -- Internet Explorer Developer Toolbar
微软发布了Internet Explorer Developer Toolbar Beta版。该产品让开发人员能够深入探索和理解Web页面,帮助开发者更好地创建Web应用。浏览和修改Web页的文档对象模型(DOM)。具备以下特性:
-通过多种技术方式定位、选定Web页上的特定元素。
-禁止或激活IE设置。
-查看HTML对象的类名、ID,以及类似链接路径、tab顺序、快捷键等细节。
-描绘表格、单元格、图片或选定标签的轮廓。
-显示图片象素、大小、路径、替代文字等。
-即时重定义浏览器窗口大小到800x600或自定义大小。
-清空浏览器缓存和cookie,被清除项可从所有对象或给定域中选择。
-直接访问关联W3C规范参考、IE开发组blog或其他来源。
-显示设计时标尺,帮助对齐对象。
该工具条可集成在IE窗口,或以浮动窗口形式存在。
下载地址: 从微软官方下载
![](https://p-blog.csdn.net/images/p_blog_csdn_net/robinhf/o_InternetExplorerDeveloperToolbar.jpg)
4,浏览器端调试工具(Firefox) -- Firebug
JavaScript, CSS, HTML,Ajax调试工具。功能包括HTML/CSS检查,除错工具,错误控制台和命令行等。可对javascript做调试和性能分析,查看html 代码的结构,css样式动态提示,检测并显示页面错误,浏览树型结构的DOM数据,可以显示javascript的log等等功能。
下载地址: http://www.getfirebug.com/
![](https://p-blog.csdn.net/images/p_blog_csdn_net/robinhf/o_Firebug.jpg)