我有这样的导航:
<nav>
<ul class='nav nav-pills'>
<li>
<%= link_to 'link1', '#' %>
</li>
<li>
<%= link_to 'link1', '#' %>
</li>
</ul>
</nav>
我的路由、视图和控制器的设置使得它们root_url/.../action
都 root_url/.../action/:page_id
将呈现相同的视图,并@page
根据:page_id
参数设置实例变量或为操作的根设置指定的默认值。稍后在视图中,我正在渲染与@page
.
我要做的是class='active'
在<li>
其链接文本与@page
.
我最初的倾向是保持 DRY 并设置window.page_id
为匹配@page
并使用 CoffeeScript 来添加类,但这给了我在页面加载和设置类之间非常明显的延迟。
有谁知道实现这一目标的最佳方法?现在我在每个<li>
元素中都嵌入了红宝石,这是相当不可取的。