主题:  怎么样把选择式样变成下拉式样?

ztf2000

职务:普通成员
等级:1
金币:0.0
发贴:1
#12004/6/25 14:17:05
我原来xp4.01论坛换肤菜单是下拉式样的!
部分代码:
$myskin.=qq~<a href="index.cgi?action=change_skin&forum=$inforum&topic=$intopic&skin=$skindata[$i]" style=font-size:9pt;line-height:14pt; >$skindata[$i]</a><br>~;
。。。。。。。。

<DIV id=_menuDiv
style="Z-INDEX: 2; VISIBILITY: hidden; WIDTH: 1px; POSITION: absolute; HEIGHT: 1px"></DIV><SPAN onmouseover=ShowMenu(pluginlist1,80) style="CURSOR: hand"><font color=$menufontcolor> | 界面选择</FONT></SPAN>
<SCRIPT>
var h;var w;var l;var t;var topMar = 1;var leftMar = -2;var space = 1;var isvisible;var MENU_SHADOW_COLOR='$catback';var global = window.document;global.fo_currentMenu = null;global.fo_shadows = new Array
function ShowMenu(vMnuCode,tWidth) {
vSrc = window.event.srcElement;vMnuCode = "<table id='submenu' cellspacing=1 cellpadding=6 style='width:"+tWidth+"' onmouseout='HideMenu()'><tr height=23><td nowrap align=left background=$imagesurl1/images/skin/$menu_b width=15></td><td nowrap align=left bgcolor=$forumcolorone>" + vMnuCode + "</table>";
h = vSrc.offsetHeight;w = vSrc.offsetWidth;l = vSrc.offsetLeft + leftMar+4;t = vSrc.offsetTop + topMar + h + space-2;vParent = vSrc.offsetParent;
while (vParent.tagName.toUpperCase() != "BODY"{l += vParent.offsetLeft;t += vParent.offsetTop;vParent = vParent.offsetParent;}
menuDiv.innerHTML = vMnuCode;menuDiv.style.top = t;menuDiv.style.left = l;menuDiv.style.visibility = "visible";isvisible = true;makeRectangularDropShadow(submenu, MENU_SHADOW_COLOR, 4)
}
function makeRectangularDropShadow(el, color, size){
var i;
for (i=size; i>0; i--){
var rect = document.createElement('div');var rs = rect.style;rs.position = 'absolute';rs.left = (el.style.posLeft + i) + 'px';rs.top = (el.style.posTop + i) + 'px';rs.width = el.offsetWidth + 'px';rs.height = el.offsetHeight + 'px';rs.zIndex = el.style.zIndex - i;rs.backgroundColor = color;var opacity = 1 - i / (i + 1);rs.filter = 'alpha(opacity=' + (100 * opacity) + ')';el.insertAdjacentElement('afterEnd', rect);global.fo_shadows[global.fo_shadows.length] = rect;
}}


//模板列表
var pluginlist1 = '$myskin'
</SCRIPT>
可以生成下拉菜单!!(如图)


现在我升级成LeoBBSX 040601
发现控制面板、论坛设施、插件等都公用一个下拉菜单式样,
于是我更改为:
$myskin.=qq~<a href="index.cgi?action=change_skin&thisprog=leobbs.cgi&forum=&topic=&skin=$skindata[$i]"><font color=$menufontcolor>$skindata[$i]</font></a>~;
。。。。。。

$myskins = qq~<img src=$imagesurl/images/fg.gif width=1> <span style=cursor:hand onMouseover="showmenu(event,skinset)" onMouseout="delayhidemenu()">界面选择</a>~;

<script>
linkset[1]='<div class=menuitems> <span style=cursor:hand onClick=javascriptpenScript("messanger.cgi?action=new",420,320) title=发送悄悄话短讯息给站内的朋友>发短讯给朋友</span></div><div class=menuitems> <a href=profile.cgi?action=modify title=编辑修改您的个人资料><font color=$menufontcolor>修改我的资料</font></a></div><div class=menuitems> <a href=fav.cgi?action=show&member=$inmembernames title=对您收藏的帖子进行管理><font color=$menufontcolor>管理我的收藏</font></a></div><div class=menuitems> <span style=cursor:hand onClick=javascriptpenScript("friendlist.cgi",420,320) title=查看、添加、删除你的好友名单>管理好友列表</span></div><div class=menuitems> <span style=cursor:hand onClick=javascriptpenScript("recopr.cgi?action=new",420,320) title=显示论坛最新的帖子列表>论坛最新帖子</span></div><div class=menuitems> <span style=cursor:hand onClick=javascriptpenScript("recopr.cgi?action=post",420,320) title=我发表的、而且已经被别人回复过的主题列表>被回复的主题</span></div><div class=menuitems> <span style=cursor:hand onClick=javascriptpenScript("recopr.cgi?action=reply",420,320) title=我发表回复过的主题列表>我参与的主题</span></div><div class=menuitems> <a href=delmycache.cgi title=清除我的缓存,确保个人所有资料都是最新的><font color=$menufontcolor>更新我的缓存</font></a></div>'
skinset='<div class=menuitems> $myskin</div>'
</script>

$output .= qq~<table width=$tablewidth align=center cellspacing=0 cellpadding=1 bgcolor=$titleborder><tr><td><table width=100% cellspacing=0 cellpadding=3><tr><td bgcolor=$menubackground $menubackpic><font color=$menufontcolor>>> 欢迎您,$loggedinas $myskins</td><td bgcolor=$menubackground align=right $menubackpic>$sann<a href=$homeurl target=_blank><img src=$imagesurl/images/gohome.gif height=16 border=0></a> </td></tr></table></td></tr></table>$newmail~;
结果生成下拉式样菜单,但是菜单里面没有皮肤的选项。查看网页原文件在里面发现
skinset=' ' 是空的,根本就没有生成!

我想一定是$myskin.=qq~<a href="index.cgi?action=change_skin&thisprog=leobbs.cgi&forum=&topic=&skin=$skindata[$i]"><font color=$menufontcolor>$skindata[$i]</font></a>~;
或者
skinset='<div class=menuitems> $myskin</div>'
</script>错了!

希望那位高手能帮我解决!!!



Mike

职务:版主
等级:6
金币:11.0
发贴:5148
#22004/6/25 17:51:01
我说allinhands啊,这别把这当成回收站好吗?