账号通
    

账号  

密码  

27529

查看

80

回复
主题:和超级新手一起分享一款漂亮的导航 [收藏主题] 本贴被认定为精华 转到:  
youkoe 当前离线

238

主题

0

广播

0

粉丝
添加关注
级别:二年级

用户积分:490 分
登录次数:366 次
注册时间:2010/9/10
最后登录:2021/5/6
youkoe 发表于:2012/2/2 15:03:00   | 显示全部帖子 查看该作者主题 楼主 
科汛智能建站系统

建议:

1、栏目导航的SQL查询改为

  1. select top 50 id,foldername from ks_class where TJ=1 and TopFlag=1 order by root,folderorder

这样导航栏目后台设置为前台导航栏不显示时,前台不会显示,同时对栏目按后台发布顺序进行排序。

2、导航外循环SQL语句建议改为

  1. select top 100 id,foldername from ks_class where tj=1 and topflag=1 order by root,folderorder

否则前台个别二级栏目不能显示。

3、导航内循环SQL语句建议改为

  1. select top 100 id,foldername from ks_class where tj=2 and topflag=1 and tn='{$Param(0)}' order by folderorder

小提示:如果想对某个“一级栏目”设置为前台不显示,需要在后台:内容-栏目管理-批量设置-栏目选项里面将该栏目及其下属二级栏目批量设置为“不显示”状态,否则前台显示的二级栏目有问题,会乱套。

4、建议将以下代码建立一个单独的JS文件,譬如放在根目录js文件夹下,取名为daohang.js,在后台标签里面调用即可,调用方法:

  1. <SCRIPT src="{$GetInstallDir}js/daohang.js" type=text/javascript></SCRIPT>


以下是该JS文件代码:

  1. function qiehuan(num){
  2.   for(var id = 0;id<=11;id++)
  3.   {
  4.    if(id==num)
  5.    {
  6.     document.getElementById("qh_con"+id).style.display="block";
  7.     document.getElementById("mynav"+id).className="nav_on";
  8.    }
  9.    else
  10.    {
  11.     document.getElementById("qh_con"+id).style.display="none";
  12.     document.getElementById("mynav"+id).className="";
  13.    }
  14.   }
  15. }

注意红色数字11,这样改后可以显示12个一级栏目。

5、CSS里面的样式根据网站布局可以进行调整,从而增加导航条内设内栏目个数。譬如

  1. #nav li a span{
  2. float:left;

  3. padding:11px 14px 10px 10px;

  4. 红色部分可以改为

  5. padding:11px 3px 2px 2px;

6、导航栏目切换功能好像还有问题,标签里面未写入JS鼠标覆盖事件,应该为

  1. [loop=50]
  2. <LI class="menu_line"></LI><li><a href="{$Field(id,GetInfoUrl,100,1)}" onmouseover="javascript:qiehuan({$AutoID})" id="mynav{$AutoID}" class="nav_off"><span>{$Field(foldername,Text,0,...,0,)}</span></a></li>
  3. [/loop]

 
悠客花香
  支持(1) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.06250秒 powered by KesionCMS 9.0