Der Umgang mit URL Formaten kann der absolute Albtraum sein. Wenn man sich einmal einen 0815 URL anschaut entscheiden nur ein paar Zeichen über Das Ziel eines URL's.
- "/" am Anfang
- "//" am Anfang
- "?" am Anfang
- "#" am Anfang
- ... und so weiter
Was wenn wir aber trotzdem einen absoluten URL haben wollen? Der eine startet mit http der andere mit https. Hier gibt es einen Trick! Du kannst das Anker HTML-Element "A" verwenden um einen absoluten URL zu erhalten
Der Code
Ich benutze eine Funktion welche selber einen Funktion zurück gibt, um sicher zu gehen das nur ein Anker Element erzeugt wird:
var getAbsoluteUrl = (function() { var a; return function(url) { if(!a) a = document.createElement('a'); a.href = url; return a.href; }; })();
Ganz egal wie du den URL String übergibst, am Ende kommt immer ein absoluter URL heraus. URL's mit "javascript:;" mal ausgenommen ;)