2017-04-25 90 views
1

下不工作哈希(我只是得到一个重装):JavaScript重定向从基础URL

  location.host += "/#settings"; 
      location.reload(); 

我如何告诉JS导航到基于现有的URL网址和完全重新加载页面(不只是追加哈希)?

这也不起作用:

   window.location.href = "/#settings"; 

我的基本URL是"http://localhost:sss/pricing"

我想重定向到"http://localhost:sss/#settings"具有加载。

我不想在任何地方输入localhost

即使这给了我settings#lol

  var desiredBase = window.location.protocol + "//" + window.location.host + "/"; 
      var path = '#lol'; 
      window.location.href = desiredBase + path; 
      location.reload(); 
+0

http://stackoverflow.com/questions/1226714/how-to-get-browser-to-navigate-to-url-in-javascript – VSO

+0

@vso不,这不适用于散列。 – SB2055

+1

'window.location.href =“#settings”'; ? – nocodename

回答

-1

试试这个

location.href += "/#settings"; 
location.reload(); 
0

另一个编辑,偷走了基本URL代码从这里:How to get base url with jquery or javascript?

<html> 

    <body> 
    <h1>Hello Plunker!</h1> 
    <script> 
     (function(){ 
     var getUrl = window.location; 
     var desiredBase = getUrl.protocol + "//" + getUrl.host + "/" + getUrl.pathname.split('/')[1]; 
     var path = `#lol`;  
     window.location.href = desiredBase + path; 
     location.reload(); 
     })(); 
    </script> 
    </body> 

</html> 

重装追加后本地页面。尝试一下。

编辑:我看到的问题没有得到与href的基地址,工作,坚持下去。

+1

你正在做一个假设,我想在代码中设置我的基址 - 我不知道。 – SB2055

+1

仅供参考我没有downvote – SB2055

+0

@ SB2055所有的好处,并没有认为你做到了。也许另一个人认为我低估了他。我不确定我在追随。你想检测当前的网址并追加#什么给它? – VSO

-2

你可以尝试这样的事情:在URL

然后

location.hash = "settings";

这 “#” 后设置的部分信息:location.reload();,它应该解决这个问题

让我知道它是否有效

谢谢