You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							48 lines
						
					
					
						
							1021 B
						
					
					
				
			
		
		
	
	
							48 lines
						
					
					
						
							1021 B
						
					
					
				| // Copyright 2014 Simon Lydell
 | |
| // X11 (“MIT”) Licensed. (See LICENSE.)
 | |
| 
 | |
| void (function(root, factory) {
 | |
|   if (typeof define === "function" && define.amd) {
 | |
|     define(factory)
 | |
|   } else if (typeof exports === "object") {
 | |
|     module.exports = factory()
 | |
|   } else {
 | |
|     root.resolveUrl = factory()
 | |
|   }
 | |
| }(this, function() {
 | |
| 
 | |
|   function resolveUrl(/* ...urls */) {
 | |
|     var numUrls = arguments.length
 | |
| 
 | |
|     if (numUrls === 0) {
 | |
|       throw new Error("resolveUrl requires at least one argument; got none.")
 | |
|     }
 | |
| 
 | |
|     var base = document.createElement("base")
 | |
|     base.href = arguments[0]
 | |
| 
 | |
|     if (numUrls === 1) {
 | |
|       return base.href
 | |
|     }
 | |
| 
 | |
|     var head = document.getElementsByTagName("head")[0]
 | |
|     head.insertBefore(base, head.firstChild)
 | |
| 
 | |
|     var a = document.createElement("a")
 | |
|     var resolved
 | |
| 
 | |
|     for (var index = 1; index < numUrls; index++) {
 | |
|       a.href = arguments[index]
 | |
|       resolved = a.href
 | |
|       base.href = resolved
 | |
|     }
 | |
| 
 | |
|     head.removeChild(base)
 | |
| 
 | |
|     return resolved
 | |
|   }
 | |
| 
 | |
|   return resolveUrl
 | |
| 
 | |
| }));
 |