1 // Copyright 2014 Simon Lydell
\r
2 // X11 (“MIT”) Licensed. (See LICENSE.)
\r
4 void (function(root, factory) {
\r
5 if (typeof define === "function" && define.amd) {
\r
7 } else if (typeof exports === "object") {
\r
8 module.exports = factory()
\r
10 root.resolveUrl = factory()
\r
12 }(this, function() {
\r
14 function resolveUrl(/* ...urls */) {
\r
15 var numUrls = arguments.length
\r
17 if (numUrls === 0) {
\r
18 throw new Error("resolveUrl requires at least one argument; got none.")
\r
21 var base = document.createElement("base")
\r
22 base.href = arguments[0]
\r
24 if (numUrls === 1) {
\r
28 var head = document.getElementsByTagName("head")[0]
\r
29 head.insertBefore(base, head.firstChild)
\r
31 var a = document.createElement("a")
\r
34 for (var index = 1; index < numUrls; index++) {
\r
35 a.href = arguments[index]
\r
37 base.href = resolved
\r
40 head.removeChild(base)
\r