Javascript 避免更改锚点中的位置(html)
我正在考虑处理单击事件的最佳解决方案,以避免更改浏览器中的位置(#) 以下是两种情况:Javascript 避免更改锚点中的位置(html),javascript,html,Javascript,Html,我正在考虑处理单击事件的最佳解决方案,以避免更改浏览器中的位置(#) 以下是两种情况: 1. <a class="someclass" href="#">Click me</a> (This is ok, but adds a "#" in the url) 2. <a class="someclass" href="javascript:void(0)">Click me</a> (Seems to be better, th
1. <a class="someclass" href="#">Click me</a>
(This is ok, but adds a "#" in the url)
2. <a class="someclass" href="javascript:void(0)">Click me</a>
(Seems to be better, the url never changes, but I don't know about compatibility in all browsers, or even when javascript is disabled)
1。
(这是可以的,但是在url中添加了一个“#”)
2.
(似乎更好,url永远不会改变,但我不知道所有浏览器的兼容性,甚至不知道javascript被禁用时的兼容性)
哪一个是最好的解决方案?据我所知,
href
参数不是必需的。只需删除它,然后仍然挂起所需的事件。在第一个方法中..只需在处理单击事件的位置添加return false
。然后它不会将#
添加到URL使用Javascript:void(0)代码>
void
操作符几乎是强制单击不执行任何操作的唯一方法。您应该使用href=“javascript:void(0)”
与onClick
相邻,因为这将阻止浏览器加载新页面。如果要对超链接使用onClick
,并要求客户端在单击超链接后不直接指向新页面,则在href='javascript:void(0)
之后返回void(0)将阻止这种情况发生