背景:
1.由于使用jeecms配置的缘故,每个栏目都绑定了固定的栏目模板和内容模板,在页面加载时通过标签获取其对应的栏目Id。
2.由于导航栏是通过循环后台所有的栏目(除不显示的以外)来获取的,并且将所有的页面的顶部统一提取到header.html中以方便维护,而header.html中不能动态获取栏目的id。所以当鼠标点击到某个菜单时,没有动态的改变其样式背景。
解决办法:
1.在导航中以动态的id来绑定每一个li,代码如下:
[#list tag_list as sub ] <li id="nav_${sub.id}"> <a [#if sub.id==100] href="${base}/" [#else] href="${sub.url}" [/#if]>${sub.name}</a> </li> [/#list]
2.在页面加载时,用js初始化每一个对应Id的li的样式。代码如下:
<script type="text/javascript"> $(function () { //将当前页面的导航菜单激活 $("#nav_${channel.id}").addClass('active'); }); </script> <!-- Site header --> [#include "../include/header.html"/]