【发布时间】:2016-04-15 06:10:21
【问题描述】:
我一直试图弄清楚如何让传统的 HTML 书签在 SilverStripe 网站上工作。我让它们工作得有些正确,因为它们确实导航到了正确的 div。但是,所有书签都导航到主页上的正确部分,这是不正确的。
例如,我在页脚的每个页面底部都有一个按钮,用于将用户带回页面顶部:
<footer class="footer">
<a href="#top" class="toTop"><i class="fa fa-angle-up"></i></a>
<div class="grid-container">
<div class="grid-100 mobile-grid-100 tablet-grid-100">
<h3>Back to top</h3>
<span class="copyright">© $Now.Year<br></span></div>
</div><!-- close container -->
</footer>
但是,当单击子页面上的“返回顶部”按钮时,用户会被带到主页的顶部。 “联系我们”部分的链接也会发生同样的事情——您总是会被带回到主页的“联系我们”部分。但这不是我想要的。书签应该让用户留在他们所在的页面上。
我把这行代码放在config.yml文件中:
SSViewer: rewrite_hash_links: false
这阻止了书签被视为网站网址,但这并没有解决所有问题。我可以在 .yml 文件中添加一些内容以防止子页面上的书签返回首页吗?
编辑:禁用 JavaScript 并不能解决问题,因此它与服务器端无关。该问题出现在 Chrome、FireFox、Safari 和 IE 中,因此似乎与浏览器无关。
【问题讨论】:
-
你这样做了docs.silverstripe.org/en/3.2/developer_guides/templates/how_tos/…。你跑example.com?flush=all了吗?如果您更改 yml 值(记得以管理员身份登录),您需要刷新配置缓存。例如。如果输出的源代码仍然包含站点 URL,则它无法正常工作。
-
这对你有用吗:
<a href="{$Link}#top" class="toTop"><i class="fa fa-angle-up"></i></a>
标签: html anchor silverstripe