織夢一二級導航被點擊欄目高亮(加class)解決方法

網站首頁菜單被點擊高亮調用方法:

 <li><a {dede:field name=typeid runphp="yes"}(@me=="")? @me=" class='on'":@me="";{/dede:field} href="{dede:global.cfg_basehost/}">網站首頁</a></li>

織夢一級菜單被點擊欄目高亮調用方法:php

{dede:channel typeid ='1'  type ='son' currentstyle="<li class='curr'><a href='~typelink~'>~typename~</a></li>"}
<li><a href='[field:typeurl/]'>[field:typename/]</a></li>
{/dede:channel}

*注:對當前欄目列表設置了class='curr',能夠經過css樣式爲其設置背景圖片或顏色,從而達到欄目高亮的效果。css

織夢二級菜單被點擊欄目高亮調用方法:

第一步:由於織夢默認dede:channelartlist標籤是不支持currentstyle屬性的,因此接加下先修改channelartlist.lib.php

 1:打開include\taglib\channelartlist.lib.php,找到$pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]);sql

 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 type='top' typeid='top' currentstyle='curr'} <li><a href="{dede:field name='typeurl'/}" class='{dede:field.currentstyle/}' > {dede:field name='typename'/} <!--判斷二級欄目下有無內容--> {dede:php} $id = $refObj->Fields['id']; $sql = ("SELECT * FROM dede_arctype where reid ='$id'"); $db->SetQuery($sql); $db->Execute(); if($db->GetTotalRow()){ echo '<span class="jt_icon iconAll"></span>'; }; {/dede:php} </a>
                    <ul style="display: none;">
                         <!--調用下級欄目--> {dede:channel type='son' noself='yes'} <li><a href="[field:typelink/]" class="a1">[field:typename/]</a></li> {/dede:channel} </ul>

                    </li> {/dede:channelartlist}

*注:生成欄目,循環出的頂級欄目li會有一個class=「curr」的屬性。頁面效果如圖所示:url

相關文章
相關標籤/搜索