Javascript/jQuery получить корневой URL-адрес веб-сайта

У меня есть веб-сайт: " http://www.example.com/folder1/mywebsite/subfolder/page.html"

Корень сайта: " http://www.example.com/folder1/mywebsite"

Я хотел бы получить корневой URL-адрес "mywebsite" динамически. Если я опубликую этот сайт в другом месте, мне не нужно будет менять script.

Например: http://www.example.com/otherFolder/test/myChangedWebsite/subfolder/page.html"

Я получу: " http://www.example.com/otherFolder/test/myChangedWebsite "

Я попробовал в "page.html" javascript: var url = window.location.protocol + "//" + window.location.host + '/otherPage.html

но это дает мне только " http://www.example.com/otherPage.html ".

Также я знаю о location.origin, но это не поддерживается для всех браузеров, поскольку я нашел, что по ссылке: http://www.w3schools.com/jsref/prop_loc_origin.asp

Если это можно сделать с помощью jQuery, это будет хорошо.

Ответы

Ответ 1

Здесь функция, выполняющая то же самое, что и сообщение Hawk выше, только намного, намного короче:

function getBaseUrl() {
    var re = new RegExp(/^.*\//);
    return re.exec(window.location.href);
}

Подробности здесь: Javascript: получить базовый URL или корневой URL

Ответ 2

немного короче:

function getBaseUrl() {
    return window.location.href.match(/^.*\//);
}

Ответ 3

если ваше местоположение фиксировано после mywebsite/subfolder/page.html"

то используйте этот

location.href.split("mywebsite")[0]