
<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/
当然也可以重定义,不过切割网址数组需要重算一下。