Função simples que retorna a base url do site.
Na função obtemos o nome do servidor, e comparamos com a string "localhost", caso seu servidor tenha outro nome, basta adicionar mais uma condição no if
da verificação.
Se seu servidor é local, é acrescentado o nome da pasta que contém seu site (caso seu site esteja dentro de uma pasta e não direto na raiz do servidor local).
E se não for um servidor local, retorna o domínio do site.
/**
* Verifica se o host é localhost, caso seja retorna a baseUrl
* com o acréscimo do nome da pasta no servidor local
* Se for um host online, apenas retora o seu domínio.
*
* @returns {String} Retorna a base url do site.
*/
function getBaseUrl() {
// Nome do host
var hostName = location.hostname;
if (hostName === "localhost") {
// Endereço após o domínio do site
pathname = window.location.pathname;
// Separa o pathname com uma barra transformando o resultado em um array
splitPath = pathname.split('/');
// Obtém o segundo valor do array, que é o nome da pasta do servidor local
path = splitPath[1];
baseUrl = "http://" + hostName + "/" + path;
} else {
baseUrl = "http://" + hostName;
}
return baseUrl;
}
Com a função pronta basta chama-la dentro de uma variável e utiliza-la em qualquer lugar de seu javascript.
// Base url do site
baseUrl = getBaseUrl();