- 阅读权限
- 70
- 精华
- 15
- 最后登录
- 2012-2-12
- 积分
- 18588
- 帖子
- 13226
- 威望
- 497
- 金币
- 1825 个
- 体力
- 3968
- 激情
- 2089
- 注册时间
- 2005-9-18
Genius
Elder Dragon begins to roar!
  
- UID
- 250140
- 积分
- 18588
- 帖子
- 13226
- 威望
- 497
- 在线时间
- 3411 小时
- 注册时间
- 2005-9-18
|
难度:低(但是需要有HTML基础)
5.0以后DZ就自带了下拉菜单功能,并且有一个很好的接口。下面教大家使用下拉菜单接口。
首先请打开jsmenu.htm
请直接在最下面一行加如下的内容:
document.write('<div class="popupmenu_popup" id="mymenu" style="display:none">');
document.write('<table cellpadding="4" cellspacing="1" border="0">');
document.write('</table></div>');
不过唯一需要说明的是红色文字部分,那个ID可以自定义,但是不能重复,这个ID起到在其它模板调用的作用,所以请牢记。
接着就开始做菜单了,请在
- document.write('<table cellpadding="4" cellspacing="1" border="0">');
复制代码
下面加如下内容:
document.write('<tr><td class="header">我的菜单</td></tr>');
注意红色的"header",那样表示菜单行的背景带有颜色(就是表格头),这样菜单就有头部了,通常这个头部是没有连接的。
如果需要再加一个菜单项目,请按照下面的格式:
document.write('<tr><td class="popupmenu_option"><a href="discuz.php" class="nav">我的论坛</a></td></tr>');
红色部分原理同上,但是这里是用了表格,就是说可以加连接的地方,相信不难理解。蓝色部分就是菜单连接的内容了,可以用html来处理各种效果,甚至可以用img代码(HTML)加图片。其它部分务必不要修改,一个菜单有多少内容就加多少行。很容易的。
里面的内容可以用if来判断显示,支持全局变量或单个变量的显示。
如果希望仅被管理员看见,那么可以写成:
<!--{if $adminid==1}-->document.write('<tr><td class="header">论坛插件</td></tr>');<!--{/if}-->
现在菜单设计完成,开始在模板去调用吧。
打开一个你需要调用该下拉的模板文件,如header.htm
找到类似的link文字让鼠标悬停去显示:
<a href="memcp.php">{lang memcp}</a>
替换成:
<span id="mymenu"><a href="memcp.php">{lang memcp}</a><script type="text/javascript">menuregister(false, "mymenu")</script></span>
注意红色部分,那个是ID,你定义的。
好了,现在你的下拉完成了,很简单吧。其实下拉可以在任何的模板调用,不一定要局限于头部。
更高级点,如果希望能在系统设置去控制,继续下面的修改:
首先请在admincp.lang.php去定义语言变量,这点不再说明了。
然后打开admin/settings.inc.php
找到:
- <br><input type="checkbox" name="settingsnew[jsmenustatus][4]" value="1" '.$jsmenu[4].'> '.$lang['settings_jsmenu_enable_my'].'<br>
复制代码
在后面加:
<input type="checkbox" name="settingsnew[jsmenustatus][5]" value="1" '.$jsmenu[5].'> '.$lang['settings_jsmenu_enable_plug'].'<br>
红色的语言定义,请自行修改。蓝色的数字请牢记,而且不能和已有的重复。
打开jsmenu.htm
找到你的下拉菜单的那段html代码,
在头尾加上
<!--{if $jsmenu[5]}-->
代码段!
<!--{/if}-->
蓝色的数字应该和系统设置的一致,除了jsmenu.htm,连调用的模板文件也应该加相应的if判断代码段,方法差不多。 |
|