跳转到锚标记,而不在URL中显示主题标签

我正在使用jQuery在用户点击post标题时在特定的主题标签上加载页面(通过body类中的onload函数)。 标签显然显示在url中。 我想知道是否有办法隐藏主题标签使URL混乱。 有些搜索并没有提出太多。

 function goToAnchor() { location.href = "#post"; } 

如下所示: http : //djpate.com/2009/10/07/animated-scroll-to-anchorid-function-with-jquery/

 function goToByScroll(id){ $('html,body').animate({scrollTop: $("#"+id).offset().top},'slow'); } 

只需传递要滚动的元素的id即可。

您可以将click事件绑定到此特定类型的锚点,并防止其上的默认值:

 $('.anchorClass').on('click', function(e) { e.preventDefault(); // rest of stuff }); 

“其他东西”意味着找到某种类型的插件或代码示例,它们将跳转页面。 如果你想让它顺利滚动,那么有一个很受欢迎的scrollTo插件。 甚至可能是scrollTo插件负责默认的预防。

[更新]

杰夫的建议(假设它有效)是“剩下的东西”,这两个答案中更有用。 ;-)但是防止违约仍然很重要。

我想你可以使用.htaccess文件。 在那里你可以让一些url链接在同一个地址。

例如, fff.com/ffffff.com以及fff.com#anchor可以在浏览器的选项卡上显示为fff.com

跳转/平滑滚动到锚标记,而不在URL中显示主题标签

尝试演示

 function scrollSmoothTo(elementId) { var element = document.getElementById(elementId); element.scrollIntoView({ block: 'start', behavior: 'smooth' }); } 
 #userdiv { margin-top: 200px; width: 200px; height: 400px; border: 1px solid red; } a { color: #337ab7; cursor: pointer; } a:hover { text-decoration: underline; } 
  Scroll to userdiv  
Lorem ipsum this is a random text