有乎-Tommy.Li的个人博客

价值、共享、信任

【织梦】首页或产品页获取产品栏目三级子分类的方法

| 阅读:137 发表时间:2020-07-24 09:31:10 技术专栏

注意查看后面的注释:

{dede:channelartlist typeid='1,2,3,4,5'}
	<li class='cat-item cat-item-{dede:field name="typeid"/}' data-level='1'>
	  <a href='{dede:field name="typeurl"/}'>
		  {dede:field name="typename"/}</a>
	  <ul class="children list-shown">
		   {dede:channel type='son' noself='yes'}
			<li class="cat-item cat-item-[field:id/]" data-level='2'>
			  <a href="[field:typeurl /]">[field:typename /]</a>
				  <ul class="children list-shown" id='sub[field:id/]' style='display:none'>
					  [field:id runphp='yes']
						global $dsql;
						$id = @me;
						$query='Select * from dede_arctype where reid='.$id;
						$dsql->Execute('cates',$query);
						$tmp = '';
						while($row=$dsql->GetArray('cates')){
							$tmp.='<li class="cat-item subli cat-item-'.$row['id'].'" data-level="3"><a href="'.str_replace("{cmspath}", "",$row['typedir']).'">'.$row['typename'].'</a></li>';
						}
						@me = $tmp;
					  [/field:id]
				  </ul>
			  </li>
			{/dede:channel}
	  </ul>
	  <div class="basel-cats-toggle toggle-active"></div>
	</li>
	{/dede:channelartlist}


=========================================================================================================================

对栏目页通过JS加亮对应的栏目名称


1、先<input type='hidden' id='cid' value='{dede:field.typeid/}'/>
2、显示出对应的二级栏目和三级栏目,并加亮
<script>
var cid = $('#cid').val();
      var level = $(".cat-item-"+cid).attr('data-level');
      switch(level){
          case "1":
              $(".cat-item-"+cid).find("a").eq(0).css({'color':'orange'});
              $('.cat-item-'+cid).find(".downarrow").eq(0).click();
              break;
          case "2":
              $(".cat-item-"+cid).parent().parent().find("a").eq(0).css({'color':'orange'});
              $('.cat-item-'+cid).parent().parent().find(".downarrow").eq(0).click();
              $("#sub"+cid).slideDown();
              $("#sub"+cid).prev().css({'color':'orange'});
              break;
          case "3":
              $(".cat-item-"+cid).parent().parent().parent().parent().find("a").eq(0).css({'color':'orange'});
              $('.cat-item-'+cid).parent().parent().parent().parent().find(".downarrow").eq(0).click();
              $(".cat-item-"+cid).find("a").css({'color':'orange'});
              $(".cat-item-"+cid).parent().parent().find("a").eq(0).css({'color':'orange'});
              $(".cat-item-"+cid).parent().slideDown();
              
              break;
      }
</script>
*文章为作者独立观点,不代表【uuuho有乎】的立场
本文由【uuuho有乎】发表并编辑,转载此文章须经作者同意,并请附上出处及本页链接。如有侵权,请联系本站删除。