【发布时间】:2016-08-23 23:46:54
【问题描述】:
有没有办法使用 if 语句根据您所在的页面操作导航栏中的元素?
例如,我想要做的是让我的主屏幕上的导航栏透明并且链接文本是黑色的。如果我将鼠标悬停在导航栏链接上,链接文本将变为白色,背景为黑色(这是我的类 nav-font 完成的)。看下面的截图:
但是,对于不是主页的所有其他页面,我希望此配色方案反转(或相反)。 Rails 目前可以做到这一点吗?
所以我想使用以下伪代码在我的布局文件 (application.html.erb) 中执行以下操作:
<% if we're on the homepage %>
<ul class="nav navbar-nav navbar-right nav-font">
<li><%= link_to "About", about_path %></li>
<li><%= link_to "Contact", new_contact_path %></li>
</ul>
<% else %>
<ul class="nav navbar-nav navbar-right nav-font-inverted">
<li><%= link_to "About", about_path %></li>
<li><%= link_to "Contact", new_contact_path %></li>
</ul>
<% end %>
我想知道的是:
- 这可能吗?如果是这样,我该怎么做?
- 如果没有,是否有更简单的解决方案或替代方案?
【问题讨论】:
标签: ruby-on-rails-4 twitter-bootstrap-3