Jquery 选择菜单项后如何避免浏览器地址栏中的#

Jquery 选择菜单项后如何避免浏览器地址栏中的#,jquery,html,Jquery,Html,我有菜单栏。菜单栏上的每个项目都是超链接: <a href="#" title="item1"> 根据菜单选择,我显示几个div并隐藏其余的div。一切正常。如果我点击菜单项,结果会显示在同一页上,这很好,但在浏览器地址栏上显示的符号类似于localhost/abc,这会导致重新激活浏览器(有没有办法避免在地址栏中显示“?” 是的,您可以通过更改 <a href="#" title="item1"> 到 为什么显示#?(来自MDN) href -这是定

我有菜单栏。菜单栏上的每个项目都是超链接:

  <a href="#" title="item1">

根据菜单选择,我显示几个div并隐藏其余的div。一切正常。如果我点击菜单项,结果会显示在同一页上,这很好,但在浏览器地址栏上显示的符号类似于
localhost/abc
,这会导致重新激活浏览器(有没有办法避免在地址栏中显示“?”

是的,您可以通过更改

<a href="#" title="item1">


为什么显示#?(来自MDN)

href -这是定义超文本源链接的锚点所需的单个属性。它指示链接目标,URL或URL片段。URL片段是一个名称,前面有一个哈希标记(#),用于指定当前文档中的内部目标位置(ID)。URL不限于Web(HTTP)-基于文档。URL可能使用浏览器支持的任何协议。例如,file、ftp和mailto可在大多数用户代理中工作


如果您以
return false
结束事件处理程序,正如您所说,它将不会出现在地址栏中。基本上,在调用的事件处理程序和
return false
之间存在一些不正常的情况(因为它不会返回)。确保您的JavaScript没有错误。

事件处理程序中的返回false应该足以阻止地址栏中出现的#;检查您的事件处理程序是否过早退出。Kelvin和Blaze,非常感谢您的响应,我更正了JS代码,我将返回语句放置在错误的位置,现在我更正了它。Karl,非常感谢您的回复,我更正了JS代码,我将返回语句放在了错误的位置,现在我更正了它。Vega,非常感谢您的回复,我更正了JS代码,我将返回语句放在了错误的位置,现在我更正了它。我用javascript:void(0)替换了#再次验证它也在工作,谢谢分享。
<a href="javascript:void(0)" title="item1">