gpt4 book ai didi

javascript - 防止标准的 href/jquery 单击组合将 # 附加到 url?

转载 作者:行者123 更新时间:2023-11-30 05:50:42 33 4
gpt4 key购买 nike

我有一个标准的链接设置,在单击时通过 jquery 触发一个事件

<a href="#" class="dosomething">Click Me</a> 

一切都很好,除了当单击伪 URL 时,它会向 url 附加一个标签 (#)。如果用户决定稍后刷新页面,此主题标签会影响我的页面重新加载的方式,因此我不希望将主题标签附加到 url。

这是否可能,同时仍然允许我的普通 jquery 触发?

谢谢!

最佳答案

您应该从 A 标记的事件处理程序中 return false;

或者,使用

<a href="javascript: void(0);" class="dosomething">Click Me</a> 

对于那些认为 javascript: void(0) 是不好的做法的人

如果你使用href='#',你必须注意两件事

// one
function fn() {
// code
return false;
}

// two
<a href="#" onclick="return fn();">click</a>

如果你忘记了而只写了 onclick="fn();" 它将不起作用

我使用 javascript: void(0); 的另一件事是,如果函数遇到/抛出错误,它不会返回false

因此,如果您是单独的开发人员,那么您显然可以做出自己的选择,但如果您是团队合作,则必须说明:

使用href="#",确保onclick总是包含return false;最后,任何被调用的函数都不会抛出错误,并且如果您将函数动态附加到 onclick 属性,请确保它不会抛出错误并返回 false。

使用 href="javascript:void(0)"

Which "href" value should I use for JavaScript links, "#" or "javascript:void(0)"?

关于javascript - 防止标准的 href/jquery 单击组合将 # 附加到 url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14986239/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com