删除#

时间:2017-02-20 15:40:19

标签: c# html sitecore

我正在开发sitecore应用程序,因为一些业务逻辑,我正在动态创建项目的路径。当我给出

 href= path+'#'+item name 

然后它正在工作,但它在URL和我的客户端上的显示不希望这样。所以我改变逻辑并用/替换#。但我点击锚点时它不会重定向。为什么会这样..

2 个答案:

答案 0 :(得分:4)

锚标记是指网页中的特定元素。 #是按ID选择项目,这会告诉浏览器加载URL然后转到ID为#item-name的项目。因此,将#替换为其他任何东西都不会起作用,因为它是选择器。

如果您希望#不可见,则需要使用URL屏蔽。

答案 1 :(得分:1)

可能存在一些良好的可访问性原因,以便在浏览器URL栏中显示“#anchor”...

...但是,出于审美原因,如果你想消除它,但仍然具有相同的功能(即导航到单个网页的不同部分),那么你可以探索使用Javascript来做同样的事情。如果操作正确,您可以与页面进行交互,URL将永远不会更改。

如果您使用JS库(for example),那么您可以在页面位置之间探索更柔和的过渡,而不是快速切割。