新手问题 左侧边导航栏点击样式问题

zhufengxiangxyz · 2015年07月21日 · 最后由 rasefon 回复于 2015年07月22日 · 2671 次阅读

如图,系统左侧是导航栏,点击的栏位高亮,但是等跳转完,样式又回到默认的第一个栏位高亮。请问这个如何解决?

激活的菜单 class 没有设置正确

#1 楼 @davidwei 现在我没加 active,我是问点击执行跳转后,样式如何保留下来。因为跳转后 layout 中的 active 还是第一个。

这个需求我也做过。可以使用 current_page 判断出当前的页面,然后对左边栏对应的页面 class 设置成 active 就行了

http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-current_page-3F

<li><%= link_to "一键比对", contrast_path, class: ('active' if current_page?(contrast_path)) %></li>
5 楼 已删除

#4 楼 @martin91 #3 楼 @lb563 非常感谢两位,开始好久没人回复我,我还以为我没描述清楚。

#6 楼 @zhufengxiangxyz 大家都有自己的工作,不一定能够一直泡在论坛上的

#4 楼 @martin91 原来还有这helper啊,一直以来我都是自己写helper,用正则判断 url - -

这个我觉的用 js 会好一些,页面载入完成后根据当前页面地址和导航连接地址对比,然后高亮对应的条目。

params[:controller] == controller_name ? "active" : nil params[:action] == action_name ? "active" : nil

需要 登录 后方可回复, 如果你还没有账号请 注册新账号