JavaScript重新加载哈希值的页面
我想刷新页面与外部JavaScript文件中的这个语句后,一些进程。
window.location.href = window.location.href
它完美地重新加载页面,但我想滚动到重新加载后的具体位置。 所以,我把它放在页面上。
<a name="uploadImgSection"></a>
并将JavaScript更改为
window.location.href = window.location.href + "#mypara";
此代码不重新加载/刷新页面
window.location.hash = "#uploadImgSection"; window.location.href = window.location.href;
当我这样做,它不会重新加载页面。 有什么办法可以用滚动条位置重新加载页面吗?
window.location.href += "#mypara"; location.reload();
首先添加散列,然后重新加载页面。 哈希将保持在那里,并重新加载页面。
testing过,工作。
ps:如果一个散列已经存在于URL中,你可以直接通过location.hash
改变而不是.href
。
我想更新这个问题,因为我发现使用window.location.href += "#mypara"
将继续追加参数到url,即使它存在。 我发现更好的方法是使用
window.location.hash = "#mypara" location.reload();
这真的是一个旧的职位,我仍然会试着回答正确的答案。
-
location.reload()
和location.reload(true)
在浏览器上像F5一样工作。 如果以前的加载完成,这将把所有的表单数据发送回服务器。 -
location.href
不会刷新页面,直到浏览器识别到URL更改。 散列(#paramname)中的更改不符合URL更改的条件,因此只是执行location.href+="#paramname"
将不起作用。
所以, location.href+="?anything#paramname"
应该重新加载页面作为一个新的请求?anything
var loc = location.hash; location.hash = " "; location.hash = loc;
这对我工作:
var tabValue = document.URL; window.location = tabValue.substring(0, tabValue.lastIndexOf("#")); window.location.hash = "#tabs-3"; //Whatever is your hash value location.reload();
这对我有效
$('body').on('click', '.className', function () { var data = $(this).attr('href'); alert($(this).attr('href')); window.location.reload(); });
这为我工作
window.location.href = baseUrl + "#/m/team"; location.reload();
尝试这个
var urlString=window.location.href; var url=urlString.split("#")[0]; window.location.href = url + "#mypara";