空 URL 哈希会导致页面跳转到 js 事件



我有一个带有下一个和上一个按钮的照片库。如果我的一个javascript方法在单击其中一个按钮时由于某种原因而损坏,它将向url添加一个哈希,即 www.google.com#。我知道可以给哈希一个div id 来跳转到页面的那部分,但是当它为空白时,它会在我的页面上跳转几次,我不确定它的目标是什么。我想尝试从 url 中删除哈希,但随后我必须确保在每个操作上都这样做,这似乎是不好的做法。我宁愿哈希对页面上的操作没有影响。

不要使用href="#",这是不恰当的。

相反,请使用href="javascript:;"或其变体(我个人使用javascript:void(null);
这明确指出链接不会转到另一个位置,而是由 JavaScript 处理。

我猜"下一个和上一个"按钮<a href="#" ...</a>像标记。在这种情况下,您可以使用jquery将事件侦听器添加到这些链接中

$('#prev, #next').on({
    'click': function(e) {
         e.preventDefault();
     }
})

并避免通过浏览器更改位置。或者在纯JavaScript中:

document.querySelectorAll('#prev, #next').addEventListener('click', function(e) {
    e.preventDefault();
},false)
//Note: this code is not cross-browser

当您不想执行导航功能时,不要使用锚标记。使用button

最新更新