我想从 javascript 中的 url 中提取基本域。
例如,对于下面列出的网址列表,我需要获取谷歌网站 (or google.co.in视情况而定)作为结果。
www.google.com
www.google.co.in
www.images.google.com
www.images.google.co.in
谷歌网站
google.co.in
图片.google.com
图片.google.co.in
任何人都知道如何去做。我猜没有直接的方法可以在 javascript 中找到基本 url。
仅当您位于想要获取顶级主机名的 URL 时,此方法才有效。
此函数保证您获得顶级主机名,因为这是浏览器允许您设置 cookie 的最小主机名。我们测试对于给定的前缀是否能够设置 cookie,如果可以,我们返回该主机名,否则我们尝试下一个前缀,直到我们找到有效的。
如果浏览器配置为不允许 cookie,或者可能是受限制的主机名(例如localhost
function get_top_domain(){
var i,h,
weird_cookie='weird_get_top_level_domain=cookie',
hostname = document.location.hostname.split('.');
for(i=hostname.length-1; i>=0; i--) {
h = hostname.slice(i).join('.');
document.cookie = weird_cookie + ';domain=.' + h + ';';
if(document.cookie.indexOf(weird_cookie)>-1){
// We were able to store a cookie! This must be it
document.cookie = weird_cookie.split('=')[0] + '=;domain=.' + h + ';expires=Thu, 01 Jan 1970 00:00:01 GMT;';
return h;
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)