我有一个按钮,点击使用Javascript点击叠加到这样的网址:
但是我的关闭按钮只会移除叠加层而不是网址中的/#about
部分。单击关闭按钮时删除/#about
的最佳方法是什么?
HTML
<button id="hide" class="close">❌</button>
JS
// Simple show and hide button
$("#hide").click(function(){
$("#about").fadeOut();
});
$("#show").click(function(){
$("#about").fadeIn();
});
答案 0 :(得分:2)
您可以使用以下javscript:
$("#hide").click(function(){
$("#about").fadeOut();
window.location.hash="";
});
#about
是页面的哈希值。脚本将只删除它。
修改强>
如果您可以使用HTML5功能,则可以执行以下操作(它也会删除“#”):
$("#hide").click(function(){
$("#about").fadeOut();
history.pushState("", document.title, window.location.pathname);
});
答案 1 :(得分:0)
由于您根本不想存在#about
哈希,因此您可以在每个处理函数的末尾添加return false
语句。
例如:
$("#hide").click(function(){
$("#about").fadeOut();
return false;
});
$("#show").click(function(){
$("#about").fadeIn();
return false;
});