织梦二级导航菜单点击顶级栏目高亮

首页判断是否添加class 调用方法:
网站首页的位置把class的属性直接在dede判断.如果本身有多个class样式.本来的除了on以外.都不能删.继续保留
<li><a {dede:field name=typeid runphp="yes"}(@me=="")? @me=" class='on'":@me="";{/dede:field} href="{dede:global.cfg_basehost/}">网站首页</a></li>
*注:首页判断是否添加class='on'属性。
织梦二级菜单被点击栏目高亮调用方法:
第一步:因为织梦默认dede:channelartlist标签是不支持currentstyle属性的,所以接加下先修改channelartlist.lib.php
1:打开include\taglib\channelartlist.lib.php,找到$pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]);
2:替换成如图所示:
                      $pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]);
                      if($typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['id'] || $typeids[$i]['id'] == $refObj->TypeLink->TypeInfos['topid'] ){
                         $pv->Fields['currentstyle'] = $currentstyle ? $currentstyle : 'navOn';
                          }
                        else{
                        $pv->Fields['currentstyle'] = '';
                         }

织梦二级导航菜单点击顶级栏目高亮

第二步:前台调用:
{dede:channelartlist typeid='top' row='8' currentstyle='on'} <!--// typeid='top'顶级栏目获取 row='8'最多8个 currentstyle='on'高亮的样式-->
<li>
{dede:field name='id'/} <!--//栏目id-->
<a href="{dede:field name='typeurl'/}" class="{dede:field.currentstyle/}">
<span>{dede:field name='typename'/}</span>
</a>
{dede:channel type='son' noself='yes'} <!--//typeid='son'二级栏目获取 noself='yes'判断是否有二级栏目-->
<ul>
<li>
<a href="[field:typelink/]">[field:typename/]</a>
</li>
</ul>
{/dede:channel} <!--//二级栏目闭合-->
</li>
{/dede:channelartlist} <!--//栏目闭合-->

*注:生成栏目,循环出的顶级栏目li会有一个class=“on”的属性。
分享

3.235.74.184