很多新手朋友在用織夢(mèng)dedecms 做仿站時(shí),經(jīng)常問怎樣實(shí)現(xiàn)導(dǎo)航欄被選中的樣式,即當(dāng)在首頁時(shí)導(dǎo)航欄的“首頁”就處 。
于選中狀態(tài),如下圖:
圖1
當(dāng)在別的欄目時(shí),導(dǎo)航欄中“首頁”就不處于選中,所在欄目處于被選中狀態(tài),如下圖:
其實(shí)做成這種狀態(tài)很簡(jiǎn)單,通常我們?cè)谧鰰r(shí),導(dǎo)航欄會(huì)放到頭部模板head.htm中,假設(shè)圖1中
導(dǎo)航欄,我們用的代碼如下:
<li class="menu_on">
<a href="{dede:global.cfg_basehost/}">{dede:global.cfg_indexname/}</a>
</li>
{dede:channel type='top' row='10' currentstyle="<li class='menu_on'><a href='~typelink~' ~rel~><span>~typename~</span></a></li>"}
<li ><a href='[field:typeurl/]' [field:rel/]>[field:typename/]</a> </li>
{/dede:channel}
從代碼中可以看到,首頁所屬的<li>標(biāo)簽中,有class="menu_on" ,這個(gè)樣式就是顯示被選中狀態(tài)。其它欄目也需要顯示被選中樣式,所以需要用添加代碼中紅色的部分。
但如果我們除首頁模板外其它的模板也調(diào)用這個(gè)head.htm ,當(dāng)進(jìn)入其它欄目,如圖2中“圖片模板”時(shí),首頁和圖片模板兩個(gè)欄目都會(huì)是被選中的。
所以解決的方法很簡(jiǎn)單,在做個(gè)head1.htm ,供除首頁模板外其它模板調(diào)用,其代碼如下:
<li >
<a href="{dede:global.cfg_basehost/}">{dede:global.cfg_indexname/}</a>
</li>
{dede:channel type='top' row='10' currentstyle="<li class='menu_on'><a href='~typelink~' ~rel~><span>~typename~</span></a></li>"}
<li ><a href='[field:typeurl/]' [field:rel/]>[field:typename/]</a> </li>
{/dede:channel}
你可能已經(jīng)看出來了,這次的代碼和上次的代碼僅僅是首頁<li>標(biāo)簽中去掉了class="menu_on" ,這樣就能做出這中效果了,很簡(jiǎn)單吧。