我有这个网址http://www.something.com/category
和
top.location.href.substr(0, top.location.href.lastIndexOf("/") );
返回http://www.something.com
但是,如果我有网址http://www.something.com/category/something
,我该如何通过移除“/”的第二个最后一次出现来再次检索http://www.something.com
...
有什么想法吗?我知道有像top.location.origin
这样的东西。我需要一种方法来削减最后两个“斜杠”!
答案 0 :(得分:1)
由于您正在使用location
对象,请使用:
location.protocol + '//' + location.host + '/';
// On this page, it shows: http://stackoverflow.com/
// Include pathname:
location.protocol + '//' + location.host + location.pathname + '/';
对于您自己的解决方案,您可以将+1
添加到第二个参数:
top.location.href.substr(0, top.location.href.lastIndexOf("/")+1 );
^^ Hi Plus One!
对更新问题的回应(参见OPs评论):
var href = top.location.href.replace(/(\/[^\/]+){2}\/?$/, '');
答案 1 :(得分:0)
为什么不向前走,而不是向后走,你知道前面只会有2个?
var url = top.location.href;
var index1 = url.indexOf('/');
var index3 = url.indexOf('/', index1 + 2);
var final = url.substr(0, index3);