Pergunta

Se eu tiver um nome de host, tais como: http://sample.example.com e em Javascript I fazer window.location.hostname, que eu recebo "example.com" ou "sample.example.com"?

Se não, como eu seria capaz de obter sample.example.com?

Foi útil?

Solução

Sim, window.location.hostname lhe dará subdomínios também. Se isso não for trabalhar, ou não é suportado por algum outro navegador, você poderia facilmente analisar para isso:

// window.location.href == "http://sample.somedomain.com/somedir/somepage.html"
var domain = /:\/\/([^\/]+)/.exec(window.location.href)[1];

Outras dicas

Em primeiro lugar, é window.location, não document.location (obras document.location em alguns navegadores, mas não é padrão)

E sim, location.hostname irá retornar todo o nome de domínio, incluindo todos os subdomínios

Leia mais aqui

Janela Local

Pode ser feito como abaixo:

var subdomain =  window.location.host.split('.')[1] ? window.location.host.split('.')[0] : false;

Sim alert (window.location.hostname) irá incluir subdomínios como 'www' e 'sample'.

Como sobre esse trecho. Pode ajudar:

var a = new String(window.location);
a = a.replace('http://','');
a = a.substring(0, a.indexOf('/'));
alert(a);

Este faz o truque para mim:

var host = window.location.host
var subdomain = host.split('.’)[0]
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top