开发者社区> 问答> 正文

怎么保证在页面跳转后,导航栏点击后增加class

导航栏的menu比如有blog, user等,链接分别对应/blog, /user等,主页home上有个class="active",
问题是怎么实现在点击blog, user导航后,blog上有“active”属性。
各个页面是extends base.html的,所以希望写一个js放在base.html里
谢谢

展开
收起
小旋风柴进 2016-03-25 14:30:34 2689 0
1 条回答
写回答
取消 提交回答
  • 下面是Jinja2文档的一个技巧:

    子页面模板:

    {% extends "layout.html" %}
    {% set active_page = "index" %}
    PS: 母模板可以读取active_page值。

    layout.html部分代码:

    {% set navigation_bar = [
        ('/', 'index', 'Index'),
        ('/downloads/', 'downloads', 'Downloads'),
        ('/about/', 'about', 'About')
    ] -%}
    {% set active_page = active_page|default('index') -%}
    ...
    <ul id="navigation">
    {% for href, id, caption in navigation_bar %}
      <li{% if id == active_page %} class="active"{% endif
      %}><a href="{{ href|e }}">{{ caption|e }}</a></li>
    {% endfor %}
    </ul>
    2019-07-17 19:14:19
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载