window.location.href 重定向不适用于 url 中的#
window.location.href redirection not working with # in the url
如果 url 包含“#”,为什么 window.loaction.href 不重新加载页面。
控制台中的 window.location.href = window.location.href
将重新加载页面,但 window.location.href = window.location.href + "#abc"
将仅替换 url 而无需重新加载。
要在 javascript 中重新加载页面,您只需使用
window.location.reload()
如果您想导航到同一页面上的锚点,您可以使用
window.location.hash = "#abc";
如果 URL 中有锚点 (#
),window.location.href = window.location.href
将不会重新加载页面,它与 <a href="#abc>
标签具有相同的行为。
另外window.open(window.location.href + "#abc","_self")
不会刷新页面。
而且这也行不通:
window.location.href = window.location.href + "#rr";
window.reload();
还有 window.location.replace( window.location.href + "#abc");
也不行。
显然这是 <a href="#abc#>
标签中的标准行为。
如果 url 包含“#”,为什么 window.loaction.href 不重新加载页面。
控制台中的 window.location.href = window.location.href
将重新加载页面,但 window.location.href = window.location.href + "#abc"
将仅替换 url 而无需重新加载。
要在 javascript 中重新加载页面,您只需使用
window.location.reload()
如果您想导航到同一页面上的锚点,您可以使用
window.location.hash = "#abc";
#
),window.location.href = window.location.href
将不会重新加载页面,它与 <a href="#abc>
标签具有相同的行为。
另外window.open(window.location.href + "#abc","_self")
不会刷新页面。
而且这也行不通:
window.location.href = window.location.href + "#rr";
window.reload();
还有 window.location.replace( window.location.href + "#abc");
也不行。
显然这是 <a href="#abc#>
标签中的标准行为。