空白href的#pound符号哈希标记的替代项



所以,我现在正在开发一个具有jquery onClick函数的网站。链接是一个简单的href="#"

每次点击,

  1. #符号附加到URL
  2. 网站导航到页面顶部

还有更好的选择吗,还是我做错了什么?

在单击处理程序中,添加return false;

您的onclick函数中需要一个return false。或者您可以这样做:

<a href="#" onclick="doSomething();return false;">click</a>

我将其用作替代

<a href="javascript:void(0)" onclick="doSomething();return false;">click</a>

有点晚了,但如果您使用的是jQuery,则在事件处理程序中可以使用

$("#myButton").on("click", function(e)
{
    // Whatever the button should do
    e.preventDefault();
});

e.preventDefault()正是这样做的,它防止了默认行为,即滚动到页面顶部(这就是#符号本身所代表的)。

id后面的hash是指向具有所述id的锚标记的链接。如果锚标记不存在,它当然可以解释为什么它会出现在页面顶部。

最新更新