7.05 - choosing connection objects at run-time.js
来自「JS设计模式源代码」· JavaScript 代码 · 共 37 行
JS
37 行
/* XhrManager singleton. */var XhrManager = { createXhrHandler: function() { var xhr; if(this.isOffline()) { xhr = new OfflineHandler(); } else if(this.isHighLatency()) { xhr = new QueuedHandler(); } else { xhr = new SimpleHandler() } Interface.ensureImplements(xhr, AjaxHandler); return xhr }, isOffline: function() { // Do a quick request with SimpleHandler and see if ... // it succeeds. }, isHighLatency: function() { // Do a series of requests with SimpleHandler and ... // time the responses. Best done once, as a // branching function. }};/* Usage. */var myHandler = XhrManager.createXhrHandler();var callback = { success: function(responseText) { alert('Success: ' + responseText); }, failure: function(statusCode) { alert('Failure: ' + statusCode); } };myHandler.request('GET', 'script.php', callback);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?