docs: function(moduleId) {
  		var scriptEl = document.createElement('script');
  		scriptEl.type = 'text/javascript';
  		scriptEl.src = resolveModuleUri(moduleId);
  
  		var useStandard = !!scriptEl.addEventListener,
  			timeoutHandle;
  
  		var errorFunc = function() {
  			postLoadFunc(false);
  		};
  
  		var loadFunc = function() {
  			if (useStandard || (scriptEl.readyState == 'complete' || scriptEl.readyState == 'loaded')) {
  				postLoadFunc(getModule(moduleId).defined);
  			}
  		};
  
  		var postLoadFunc = function(loaded) {
  			clearTimeout(timeoutHandle);
  
  			if (useStandard) {
  				scriptEl.removeEventListener('load', loadFunc, false);
  				scriptEl.removeEventListener('error', errorFunc, false);
  			}
  			else {
  				scriptEl.detachEvent('onreadystatechange', loadFunc);
  			}
  
  			if (!loaded) {
  				var module = getModule(moduleId);
  				if (!module.defined) {
  					module.defined = module.error = true;
  					fireCallbacks();
  				}
  			}
  		};
  
  		if (useStandard) {
  			scriptEl.addEventListener('load', loadFunc, false);
  			scriptEl.addEventListener('error', errorFunc, false);
  		}
  		else {
  			scriptEl.attachEvent('onreadystatechange', loadFunc);
  		}
  
  		timeoutHandle = setTimeout(errorFunc, _timeoutLength);
  
  		head.appendChild(scriptEl);
  	}