在RoR网站上与HAML跳转链接

时间:2016-09-02 00:22:23

标签: html ruby-on-rails anchor haml

这里有一个非常简单的问题,但我似乎无法找到明确的答案。

我目前正在处理一个页面,其中链接列表将指向页面的不同区域。我知道如何做到这一点是常规HTML(使用"名称"字段),但我不确定如何在HAML中执行此操作。我不久前才开始使用它。我试过这样做,这是不行的。

.li 
   = link_to 'Information', '#info'

我试图链接到以下部分:

.h2 INFORMATION { name: 'info' }

关于如何解决这个问题,有一个奇怪的信息稀缺?如果有人能指出我正确的方向,我真的很感激。

2 个答案:

答案 0 :(得分:2)

而不是:

.h2 INFORMATION { name: 'info' }

你想要这个:

.h2{name: 'info' } INFORMATION

属性哈希需要在类名旁边。这会产生:

<div class='h2' name='info'>INFORMATION</div>

具有name属性。在您的代码中,{ name: 'info' }仅作为div内容的一部分包含在内。

答案 1 :(得分:1)

link_to helper可以生成与锚点的链接:

link_to "Comment wall", profile_path(@profile, anchor: "wall")
# => <a href="/profiles/1#wall">Comment wall</a>
.block
  %h2#block1 Block 1
  = link_to "Block 2", route_path(anchor: "#block2")
.block
  %h2#block2 Block 2
  = link_to "Block 1", route_path(anchor: "#block1")

作为旁注:我建议您在标题/部分使用id属性而不是name属性。关于为什么可以在这个帖子中找到一个冗长的讨论和答案:HTML anchors with name or id?