我正在寻找有关偏爱的一些帮助。我在我的网站上创建了一个部分菜单,但我想知道是否可以为部分添加一个额外的类。更具体地说,我希望为li
菜单对象分配一个额外的类,以便我可以指示用户在该特定页面上。
这是我的部分代码(我正在使用HAML)。它名为_menu.html.haml,位于“共享”文件夹中。
.three.columns
%ul#nav
%li
%a{:href => "../pages/about"} About
%li
%a{:href => "../pages/careers"} Careers
%li
%a{:href => "../pages/contact"} Contact Us
%li
我的carrers.html.haml页面的代码如下:
code...
= render :partial => 'shared/menu'
more code...
我想在部分中的职业链接中添加.active_page
课程。此类更改文本后面的背景图像,以指示用户位于特定页面上。更具体地说,我希望它看起来像这样:
%li.active_page
%a{:href => "../pages/careers"} Careers
是否可以使用partials来做到这一点?
答案 0 :(得分:0)
您使用部分内容并不会改变您使用HAML,ERB或类似内容的方式。如果您想添加一个类,那么只需将.active_page
添加到HTML标记即可。如果在HAML中做的是有效的事情,那么你可以在视图中的任何地方进行,即使它恰好是部分的。
部分只是模块化/可重用的视图。就像你可以在实例方法和类方法中使用代码一样,因为它们只是代码,所以你可以在部分和“常规”视图中使用相同的HAML代码。
答案 1 :(得分:0)
有很多方法可以做到这一点。我不会使用偏见,我会这样做:
%li{:class => @active_page=="careers" ? "active_page" : ""}
%a{:href => "../pages/careers"} Careers
假设您的控制器已创建@active_page。