Ruby on rails 引导式动态主动导航
我正在使用以下代码进行导航:Ruby on rails 引导式动态主动导航,ruby-on-rails,twitter-bootstrap,navigation,haml,Ruby On Rails,Twitter Bootstrap,Navigation,Haml,我正在使用以下代码进行导航: .row-fluid .span3 .well %ul.nav.nav-tabs.nav-stacked %li.nav-header Menu %li %a{:href => "/cms/1"} page1 %li %a{:href => "/cms/2"} page2
.row-fluid
.span3
.well
%ul.nav.nav-tabs.nav-stacked
%li.nav-header
Menu
%li
%a{:href => "/cms/1"} page1
%li
%a{:href => "/cms/2"} page2
%li
%a{:href => "/cms/3"} page3
%li
%a{:href => "/cms/4"} page4
如果我将
.active
放在%li
之后,它会使项目处于活动状态,如何动态执行此操作,以反映当前处于活动状态的页面?我已经安装了所有引导javascript文件。您可以创建一个如下的帮助函数:
def active_navigation(item, param)
"class='active'" if params[param] == item
end
%li.nav-header
Menu
%li{:class => active_navigation(1, :id)}
%a{:href => "/cms/1"} page1
%li{:class => active_navigation(2, :id)}
%a{:href => "/cms/2"} page2
%li{:class => active_navigation(3, :id)}
%a{:href => "/cms/3"} page3
%li{:class => active_navigation(4, :id)}
%a{:href => "/cms/4"} page4
然后在你看来,你可以这样说:
def active_navigation(item, param)
"class='active'" if params[param] == item
end
%li.nav-header
Menu
%li{:class => active_navigation(1, :id)}
%a{:href => "/cms/1"} page1
%li{:class => active_navigation(2, :id)}
%a{:href => "/cms/2"} page2
%li{:class => active_navigation(3, :id)}
%a{:href => "/cms/3"} page3
%li{:class => active_navigation(4, :id)}
%a{:href => "/cms/4"} page4
我只是不知道/hatehaml
,所以我认为语法不正确。但我认为这是一个很好的例子,你可以尝试调整自己的领域。看看
在这个问题中,有很多替代方法可以“自动检测”当前页面,因此可以轻松地在相关菜单项上设置活动类