通过侧面菜单栏导航页面导航

时间:2016-05-08 12:48:23

标签: javascript jquery css ruby-on-rails twitter-bootstrap

我正在处理一个应用程序,这里有一个侧面菜单栏(图片附在此处)here is the link of screenshot.

我想要的是浏览这个菜单,实际上我希望在菜单列表中提到的每个页面上预设此菜单。此外,还应该关注我目前所处的链接。 here I have attached screenshot of that too.

我想在菜单上的所有页面上重复我的侧面导航菜单代码。但它不会激活/关注当前活动的链接。更好的解决方案?我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

您可以将菜单部分放入。让我们称之为_sidebar_menu.html.erb

然后您将其加载到每个页面或application.html.erb中,如下所示 - >

<%= render partial: "layouts/sidebar_menu" %>"layouts"替换为您保存菜单文件的任何文件夹。

现在您已经在每个页面中显示了菜单。你可以选择&#34;菜单或添加您定义的类以使其“活跃”#34;通过使用一些JavaScript。一种方法是检查网址,并激活相应的链接,或者您可以使用rails控制器和操作的名称来确定要激活的链接。

$(document).ready(function(){
    controller_name = "<%= params[:controller] %>"
    //The controller name will be dynamically inserted by rails
    $(".sidebar-menu li a").each(function(){
        if($(this).attr("href").toLowerCase().indexOf(controller_name) > -1){
            $(this).addClass("active")
        }
    });
});

我假设您的网址中包含控制器的名称。您也可以使用控制器的操作名称,例如<%= params[:action] %>来实现它。您可以使用它来找到有助于您的案例的解决方案。我希望你明白这个主意。如果有效,请告诉我。