如果我的地址栏中已有哈希,例如domain.com#whatever和我打电话......
top.location.hash = "";
#wathever转换为domain.com#,没有任何内容。
是否可以完全删除哈希?所以没有#
。
因为如果我调用top.location.hash = "";
页面跳转到顶部,因为#被传递给url。我想阻止它。
答案 0 :(得分:3)
可以使用history.pushState,例如:
history.pushState({}, '', './');
当然它的IE< 10不兼容,但对我有用: - )
答案 1 :(得分:2)
top.location = ''
应该这样做,但它会导致页面重新加载。我认为没有办法以编程方式删除它。
答案 2 :(得分:0)
window.location = window.location.href.replace( /#.*/, "");
答案 3 :(得分:0)
遗憾的是,如果不刷新页面,就无法可靠地执行此操作,在这种情况下,您可以使用location.href属性。