当前位置:首页 > 文章 > 帝国CMS > 正文内容

帝国cms模板利用JS使当前栏目无限级高亮控制显示的方法!

3年前 (2022-10-21)帝国CMS8883

首先我们要用到灵动标签从数据库取出对应的栏目名称:

  一、若要取出所有的最顶级的栏目名称选择:bclassid=0,其中 id="cid 就是要拿到当前页面的ID值

[e:loop={'select classid,classname,classpath from [!db.pre!]enewsclass where bclassid=0 and showclass=0 order by myorder',0,24,0}]
<li id="cid<?=$bqr[classid]?>" <?=currentPage($GLOBALS[navclassid],$bqr[classid])?>>
<a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" target="_self" ><?=$bqr[classname]?></a>
</li>
[/e:loop]

  二、若要取出固定的栏目:可以将bclassid=59,这个值就是你的父栏目的ID值,其中 id="cid 就是要拿到当前页面的动态ID值,生成的字符是cid28,cid29,cid30等等。

[e:loop={'select classid,classname,classpath from [!db.pre!]enewsclass where bclassid=59 and showclass=0 order by myorder',0,24,0}]
<li> <a id="cid<?=$bqr[classid]?>" href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" target="_self" >
<?=$bqr[classname]?>
</a> </li>
[/e:loop]

  把js在其下面加载,JS代码如下,其中cur2 就是你的定住并要显示高亮的样式,不过多赘述。

<script type="text/javascript">
var myid = document.getElementById('cid[!--self.classid--]');
myid.className = 'cur2';
</script>

  变量说明:

  [!--self.classid--] 代表当前的栏目ID数值

   代表栏目ID

  其他方法参考:

  首先要在userfun.php文件中加如下代码:

function currentPage($classid,$thisid){
        global $class_r;
        $fr=explode('|',$class_r[$classid][featherclass]);
        $topbclassid=$fr[1]?$fr[1]:$classid;//取得第一级栏目id
        if ($topbclassid==$thisid) {
                  echo "class='menuon'";
                }
else {
}
}
function OnePage($classid,$thisid){
        global $class_r;
        $fr=explode('|',$class_r[$bclassid][featherclass]);
        $topbclassid=$fr[1]?$fr[1]:$classid;//取得子栏目id
        if ($topbclassid==$thisid) {
                  echo "bmenuon";
                }
                else {
                }
}
<ul>
<li class="menuon"><a href="[!--news.url--]" target="_self">首页</a></li>
[e:loop={'select classid,classname,classpath from [!db.pre!]enewsclass where bclassid=0 and showclass=0 order by myorder',0,24,0}]
<li id="cid<?=$bqr[classid]?>" <?=currentPage($GLOBALS[navclassid],$bqr[classid])?>>
<a href="<?=$public_r[newsurl]?><?=$bqr[classpath]?>" target="_self" ><?=$bqr[classname]?></a>
</li>
[/e:loop]
</ul>

扫描二维码推送至手机访问。

版权声明:本文由蓝博发布,如需转载请注明出处。

本文链接:https://blueboss.cn/p/344.shtml

“帝国cms模板利用JS使当前栏目无限级高亮控制显示的方法!” 的相关文章

帝国CMS模板中显示标题颜色的标题灵动标签调用

帝国CMS模板中显示标题颜色的标题灵动标签调用

帝国cms模板中显示标题颜色的标题灵动标签调用方法! 调用标签如下: <?=DoTitleFont($bqr[titlefont],$bqr[title])?> OK!搞定!...

帝国CMS发布文章替换正文图片标签里ALT内容

帝国CMS发布文章替换正文图片标签里ALT内容

帝国CMS发布信息文章时替换正文IMG图片标签里的ALT内容 有利于网站的SEO优化。 在 e/class/userfun.php 里面增加 //替换正文IMG里的ALT内容 function user_imgalt($mid,$f,$isadd,$isq,$value,$cs){ $title=...

帝国CMS模板调用收藏内容的会员信息带头像和不带头像

帝国CMS模板调用收藏内容的会员信息带头像和不带头像

帝国cms模板里面,怎么调用显示收藏该内容的会员信息呢?其实方法也不难,下面帝国CMS模板网就来告诉大家怎么调用: 方法1、(不带头像调用) [e:loop={"select * from [!db.pre!]enewsfava where classid='$navinfor[classid]'...

帝国CMS中#091;!--no.num--]标签的用法分析

帝国CMS中#091;!--no.num--]标签的用法分析

帝国CMS [!--no.num--] 标签用法: 帝国CMS[!--no.num--] 指定从某一数字开始显示 代码如下: <?=$bqno+5?> 帝国CMS[!--no.num--] 输出效果为 1 2 3 4 5 6 7 8...样式 代码如下: <?=$bqno?&g...

帝国CMS结合项提示您来自的链接不存在

帝国CMS结合项提示您来自的链接不存在

帝国CMS结合项提示"您来自的链接不存在"的解决方法。具体方法如下: 打开e/class/userfun.php 将global $public_r; 改成 global $public_r,$navclassid; if($_GET['classid'])   {  $classid=RepPo...

帝国CMS模板中不同会员组显示不同内容

帝国CMS模板中不同会员组显示不同内容

帝国cms模板里面不同会员组显示不同内容怎么实现? 具体调用代码如下: <?php  if(getcvar('mlgroupid')<1)  {  ?>  //游客看到的内容  <?php  }  elseif(getcvar('mlgroupid')==1)  {  ?&...