栏目当前样式 织梦
<li class="select-list parentDiv"><dl><dt>父类:</dt> <dd><a class="parrentAll" href="{dede:type typeid='1'}[field:typeurl/]{/dede:type}">全部</a></dd> {dede:channel typeid='1' type='son' currentstyle="<dd><a class='cur' href='~typelink~' ~rel~>~typename~</a></dd>" row='28'} <dd> <a href="[field:typeurl/]">[field:typename/]</a></dd> {/dede:channel} </dl></li> {dede:channelartlist typeid='1' type='son' limit='0,28' } <li class="select-list sonDiv " {dede:global name=itemindex runphp='yes'} $a="style='display:none;'"; $b="style='display:block;'"; if(@me==1){@me=$b;} else{@me=$a;} {/dede:global}><dl><dt>子类:</dt><dd><a class="all" href="{dede:field name='typeurl'/}">全部</a></dd> {dede:channel row='18' currentstyle="<dd><a class='cur' href='~typelink~' ~rel~>~typename~</a></dd>"} <dd><a title="[field:typename/]" href="[field:typeurl/]">[field:typename/]</a></dd> {/dede:channel} </dl></li> {/dede:channelartlist}
var url = window.location.href; var urlArray = url.split("/"); var erLanmu = url.split("/")[4]; var ddParentNum = document.querySelectorAll(".parentDiv dd>a"); var j=0; for(var i=1;i<ddParentNum.length;i++){ if(ddParentNum[i].href.indexOf(erLanmu)>-1&&erLanmu!=""){ ddParentNum[0].classList.remove("cur"); ddParentNum[i].classList.add("cur"); }; if(ddParentNum[i].classList.contains("cur")){ //如果父有class cur j=i; ddParentNum[0].classList.remove("cur"); }; } var sonNum= document.querySelectorAll(".sonDiv"); for(var i=0;i<sonNum.length;i++){ sonNum[i].style.display = "none"; } sonNum[j-1].style.display = "block"; var sonNumHref = document.querySelectorAll(".sonDiv dl dd a"); for(var i=0;i<sonNumHref.length;i++){ if(urlArray.length==6){ document.querySelectorAll(".sonDiv .all")[i].classList.add("cur"); } }
一、共三级栏目,主要是二级栏目和三级栏目的当前样式cur。点击对应的二级栏目,对应的三级栏目是要展开的,其他三级栏目隐藏。
二、但若是点击三级栏目,则三级栏目不出现。定义一个j,记录是哪一个二级栏目。
三、两个全部的当前样式。
四、根据网址来判断的,所以二级栏目的地址必须是
http://xxx.xx.xx.xx:8021/yangyinfenlei/zhuantipian/
三级栏目网址必须是
http://xxx.xx.xx.xx:8021/yangyinfenlei/zhuantipian/renwuzhuanti/
当然也可以重定义,不过切割网址数组需要重算一下。