dedecms當前欄目高亮顯示方法


請問在dedecms模板中如何實現導航欄中當前欄目的樣式和非當前欄目不同,也就是當前欄目高亮顯示?如果是頁面是當前欄目的頁面,比如說導航中有:

這五個導航欄目,那么當我瀏覽<公司簡介>這一欄目時<公司簡介>在導航條中就高亮顯示如:

首頁、公司簡介、公司新聞、產品中心、聯系我們

或者采用另外的css樣式,像:背景改為紅色,非當前欄目就采用別的css樣式。怎么實現這個功能呢?

1:首選我們來了解一下(channel)標簽的使用:

標簽名稱:channel

標記簡介:織夢常用標記,通常用於網站頂部以獲取站點欄目信息,方便網站會員分類瀏覽整站信息功能說明:用於獲取欄目列表適用范圍:

全局使用基本語法:

{dede:channel type='top' row='8' currentstyle="<li><a href='~typelink~' class='thisclass'>~typename~</a> </li>"}

<li><a href='[field:typelink/]'>[field:typename/]</a>

</li>

{/dede:channel}

參數說明:typeid = '0' 欄目ID

reid = '0' 上級欄目ID

row = '100' 調用欄目數

col = '1'分多少列顯示(默認為單列)

type = 'son | sun' son表示下級欄目,self表示同級欄目,top頂級欄目

currentstyle = ''應用樣式

class='thisclass'   thisclass這個是自由的,他代表的意思是樣式表里面,你所給的高亮顯示的樣式。

底層模板字段:ID(同 id),typeid, typelink, typename, typeurl,typedir(僅表示欄目的網址)

例:{dede:channel type='top'}<a href='[field:typelink /]'>[field:typename/]</a>{/dede:channel}

注:在沒有指定typeid的情況下,type標記與模板的環境有關,如,模板生成到欄目一,那么type='son'就表示欄目一的所有子類。


請看我的 dedecms模板中導航部分代碼:

<DIV class=menu>

<UL>

<LI><A href="/">首頁</A> </LI>

{dede:channel type='self' row='8' currentstyle="<li class=hover><a href=~typelink~>~typename~</a></li>"}

<LI><a href='[field:typelink/]'>[field:typename/]</a></LI>

{/dede:channel}

</UL>

</DIV>

那么我們在樣式表里面的hover就是控制高亮顯示的樣式:

.menu{里面就不多寫了}

.menu ul{里面就不多寫了}

.menu ul li{里面就不多寫了}

.menu ul li a{里面就不多寫了}

.hover{background:url(bg-nav.jpg) no-repeat;}

上面這段是我的網頁頂部導航菜單,其中currentstyle就是用來實現當前欄目突出顯示的。 class=hover自然是我定義的當前欄目樣式啦!


這里就涉及到了dedecms的標簽問題,其實熟悉dedecms標簽的同學對這個問題就不會為難,以下是dedecms的官方頻道標簽(也就是導航條用

到的標簽)說明:其中 class='thisclass' 中的thisclass就是你定義的css樣式類別名(class,類別選擇器),應用時改為你定義的class。

class='thisclass'放在<a>標記中則css樣式作用於<a>,也可以放在<li>標記中,作用於<li>標記。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM