在夕阳西下时,伴着如夜晚霞,刮起来美丽的秋风,金黄的叶子从树上落下来,像一只只美丽的蝴蝶,翩翩起舞格外美丽。树下,一个个活泼可爱的小朋友正在捡树叶,放在收集本子里,把美丽的秋天永远珍藏。
dede实现嵌套li加currentstyle的二级菜单非常麻烦,所以官方之前的版本也使用了js来实现,而且为此还hardcode了一下编码到标签库里面,具体见 \include\taglib\channel.lib.php line100
//检查是否有子栏目,并返回rel提示(用于二级菜单)
及 line130
$row['rel'] = " rel='dropmenu{$row['id']}'";
可见,如果需要二级菜单加当前样式,那么头部
- <ul>
- <li><a rel="nofollow noopener noreferrer" href='{dede:global.cfg_cmsurl/}/'>
- <span class="cn">首页</span>
- <span class="en">Home</span>
- </a></li>
- {dede:channel type='top' row='10' currentstyle='<li class="current"><a rel="nofollow noopener noreferrer" href="~typelink~" ~rel~>#<span class="cn">~typename~</span><span class="en">~dirName~</span></a></li>'
- }
- <li>
- <a rel="nofollow noopener noreferrer" href='[field:typeurl/]' [field:rel/]>
- <span class="cn">[field:typename/]</span>
- <span class="en">[field:typedir runphp='yes' commet="获得最后目录名,英文"]
- $l=split("/", @me);
- @me=array_pop($l);
- [/field:typedir]</span>
- </a>
- </li>
- {/dede:channel}
- </ul>
rel的属性是必须的
而且在底部
{dede:channelartlist typeid='top'}
<ul id="dropmenu{dede:field.typeid/}">
{dede:channel type='son' noself='yes'}
<li><a rel="nofollow noopener noreferrer" href="[field:typelink/]">[field:typename/]</a></li>
{/dede:channel}
</ul>
{/dede:channelartlist}
dropmenu的关键字也是必须的。
dropmenu的关键字也是必须的。
剩下的就是css和js的工作了。
本文dede如何实现嵌套li加currentstyle的二级菜单到此结束。不要忘记为自己,为爱自己的人而活……小编再次感谢大家对我们的支持!