马上注册,免费下载更多dz插件网资源。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
这个效果就是discuz默认模板中,导航部分的一个高亮效果。
简单的来说,就是在当前页面时,当前导航为高亮。
在这里总结出了4种在discuz中的做法。其中重点在于第三、第四种。
第一种(discuz自带,仅限用于主导航)<!--{eval $mnid = getcurrentnav();}--> getcurrentnav() 是discuz自己封装的一个函数,而这一段是获取当前页面位置。
第二种{if $do=='wall'} class="a"{/if} 这种方式局限性比较大。不推荐使用
第三种{if $_G['**']=='**'}class="a"{/if} 这里其实用到的就是get方式,来get地址栏中的参数。比如一下2段地址- <li{if $_G['do']=='doing'}class="a"{/if}><a href="home.php?mod=space&uid=$space[uid]&do=doing&view=me&from=space">{lang doing}</a></li><li{if $_G['do']=='blog'}class="a"{/if}><a href="home.php?mod=space&uid=$space[uid]&do=blog&view=me&from=space">{lang blog}</a></li>
复制代码 我们既然是要做当前页面的高亮,那么首先需要注意的一点就是找列表中 href 的不同之处。
以上面的这段为例,其他的参数都是一致的,唯独 do 的参数不一致,那么我们就需要去 get 这个 do 的参数,来区分当前页面是哪一个。这样,当我们访问的页面地址栏中有 do=doing 时,父级的li中 就会多出一个class="a"。
当然这里可以get地址栏中的任意一个参数,前提是所有 a 标签中的 href 里,必须都包含。
第四种
如果需要高亮当前导航的地址中,没有像第三种所举例的这些参数,例如:那么这里就需要用到 $_G['basescript'] 这个变量了。比如:- <li{if $_G['basescript']=='forum'}class="a"{/if}><a href="http://www.688576.com/forum.php">论坛</a></li><li{if $_G['basescript']=='home'}class="a"{/if}><a href="http://www.688576.com/home.php">家园</a></li>
复制代码
©DZ插件网所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。 网站部分内容来源于网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,得到更好的正版服务。 您在本站任何的赞助购买、下载、查阅、回复等行为等均表示接受并同意签订《DZ插件网免责声明协议》。 如有侵权请邮件与我们联系处理: discuzaddons@vip.qq.com 并出示相关证明以便删除。敬请谅解!
|
|