Если у меня есть имя хоста, например: http://sample.example.com, а в Javascript я делаю window.location.hostname, получу ли я "example.com" или "sample.example.com"?
window.location.hostname
Если нет, как я смогу получить sample.example.com?
Да, window.location.hostname также даст вам субдомены. Если это не работает или не поддерживается каким-либо другим браузером, вы можете легко его проанализировать:
// window.location.href == "http://sample.somedomain.com/somedir/somepage.html" var domain = /:\/\/([^\/]+)/.exec(window.location.href)[1];
Это можно сделать, как показано ниже:
var subdomain = window.location.host.split('.')[1] ? window.location.host.split('.')[0] : false;
Прежде всего, это window.location, а не document.location (document.location работает в некоторых браузерах, но не является стандартным)
window.location
document.location
И да, location.hostname будет возвращать полное доменное имя, включая любые субдомены
location.hostname
Подробнее здесь
Расположение окна
Да, оповещение (window.location.hostname) будет включать субдомены, такие как «www» и «sample».
Как насчет этого фрагмента? Это может помочь:
var a = new String(window.location); a = a.replace('http://',''); a = a.substring(0, a.indexOf('/')); alert(a);
Это помогает мне:
var host = window.location.host var subdomain = host.split('.’)[0]