以下不起作用(我只是重新加载):
location.host += "/#settings";
location.reload();
如何告诉JS根据现有的URL导航到URL并完全重新加载该页面(不只是附加哈希)?
这也不起作用:
window.location.href = "/#settings";
我的基本网址为"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 :(得分:0)
另一个编辑,从这里偷走了基本网址代码: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 :(得分:-1)
试试这个
location.href += "/#settings";
location.reload();
答案 2 :(得分:-2)
您可以尝试这样的事情:
location.hash = "settings";
这会在URL
中的“#”后面设置然后执行:location.reload();
它应该解决问题
让我知道它是否有效
谢谢