2017-04-25 56 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();,它應該解決這個問題

讓我知道它是否有效

謝謝