Существует ли метод / функция для получения канонического / преобразованного URL-адреса с учетом любого параметра base.href на странице?
Я могу получить базовый URL через (в jQuery), используя $("base").attr("href")
, и я могу использовать строковые методы для анализа URL, предназначенного для этого, но
- $ ("base"). Attr ("href") не имеет атрибутов хоста, пути и т. Д. (Как у window.location)
- ручная сборка довольно утомительна
Например, с учетом base.href "http://example.com/foo/"
и относительного URL "/bar.js"
результат должен быть: "http://example.com/bar.js"
Если base.href отсутствует, URL должен быть сделан относительно window.location.
Это должно обрабатывать несуществующий файл base.href (в данном случае используется местоположение в качестве базы).
Есть ли уже стандартный метод для этого?
(Я ищу это, поскольку jQuery.getScript завершается ошибкой при использовании относительного URL-адреса, такого как "/foo.js", и используется тег BASE (FF3.6 делает запрос OPTIONS, а nginx не может это обработать). При использовании полного URL (base.href.host + "/foo.js", это работает).)