帮忙看看这个javascript脚本

gcbxjkh12345 2004-11-10 04:42:56
http://dev.csdn.net/article/29/29156.shtm
我直接复制上面页中javacript代码到记事本中 另存为html文件 为什么子菜单不能弹出 谢谢
...全文
86 13 打赏 收藏 举报
写回复
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
gcbxjkh12345 2004-11-10
  • 打赏
  • 举报
回复
好的 我试试看
sportdog 2004-11-10
  • 打赏
  • 举报
回复
strTable就是子菜单,你可以把它换成别的,比如写个数组,在从数组里读出来生成子菜单。
希望对你有帮助!
sportdog 2004-11-10
  • 打赏
  • 举报
回复
你要觉得可以你就自己再改改吧,思路就是这样,还有些东西没写完,这个会被flash给盖住,你如果要显示在flash上就用iframe代替!
sportdog 2004-11-10
  • 打赏
  • 举报
回复
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<style type="text/css">
<!--
TR
{
FONT-SIZE: 12px;
COLOR: #000000;
FONT-FAMILY: 宋体,arial
}
TD
{
FONT-SIZE: 12px;
COLOR: #000000;
FONT-FAMILY: 宋体,arial
}
.dropdown
{
Z-INDEX: 10;
LEFT: -20px;
WIDTH: 10px;
POSITION: absolute;
TOP: 81px
}
.dropLinks
{
FONT-SIZE: 11px;
COLOR: #ffffff;
FONT-FAMILY: Arial, Verdana, Helvetica, sans-serif;
TEXT-DECORATION: none
}
-->
</style>
<TITLE></TITLE>
</HEAD>
<BODY>
<TABLE cellSpacing=0 cellPadding=0 width="200" border=0 bgcolor=cornflowerblue onMouseOver="div_table_1.style.display =''" onMouseOut="div_table_1.style.display = 'none';">
<TR>
<TD onmouseover="setPlace(this,1)" >电脑</TD>
<TD onmouseover="setPlace(this,2)" id="td1">第二章</TD>
<TD onmouseover="setPlace(this,3)" >第三章</TD>
</TR>
</TABLE>
<div id="div_table_1" class="dropdown" onMouseOver="this.style.display =''" onMouseOut="this.style.display = 'none';">
</div>
</BODY>
</HTML>
<script language=javascript>
//document.body.attachEvent("onclick",hiddenDiv);
function hiddenDiv()
{
div_table_1.style.display = 'none';

}
function getPos(cell)
{
var pos = new Array();
var t=cell.offsetTop;
var l=cell.offsetLeft;
while(cell=cell.offsetParent)
{
t+=cell.offsetTop;
l+=cell.offsetLeft;
}
pos[0] = t;
pos[1] = l;
return pos;
}

function setPlace(cell,i)
{
var strTable="<table id=table1 border=0 cellpadding=0 cellspacing=0 bordercolor=#397DBD bgcolor=#6d9cd1>";
strTable+="<tr><td >台式机</td></tr><tr><td>服务器</td></tr><tr><td>笔记本</td></tr><tr><td>打印机</td></tr><tr><td>网络产品</td></tr></table>";
div_table_1.innerHTML = strTable;
var arrPos = getPos(cell);
var oDiv = document.all.div_table_1;
var oTable = document.all.table1;

oDiv.style.display = '';
oTable.style.display = '';
var tdwidth = cell.offsetWidth;
var tdheight = cell.offsetHeight;
var tdleft = arrPos[1];
var tdtop = arrPos[0];
oTable.style.width = tdwidth;
oDiv.style.width = tdwidth;

oDiv.style.left = tdleft;
oDiv.style.top = tdtop + tdheight;
}


</script>

gcbxjkh12345 2004-11-10
  • 打赏
  • 举报
回复
好 谢谢你 不过我已经调了两天了还是不行
我以前用vc 刚刚接触jvvascript
sportdog 2004-11-10
  • 打赏
  • 举报
回复
我也没仔细看,你加代码慢慢调吧,我要下班了!
gcbxjkh12345 2004-11-10
  • 打赏
  • 举报
回复
你有自己写的吗?给我发一个好吗
wlvswj@163.com
sportdog 2004-11-10
  • 打赏
  • 举报
回复
慢慢调吧!
gcbxjkh12345 2004-11-10
  • 打赏
  • 举报
回复
为什么页面初次加载时这个长度不为零 但是相应单击事件后就是零了呢??
sportdog 2004-11-10
  • 打赏
  • 举报
回复
display:none该成inline
有时可以,有时又不行,算了不看了,还不如自己写的明白,


他这是用div来定位的,div中放了个iframe,不知道有flash动画时,菜单是显示在上面还是下面,
gcbxjkh12345 2004-11-10
  • 打赏
  • 举报
回复
这个我也知道 关键是怎么解决???
sportdog 2004-11-10
  • 打赏
  • 举报
回复
哈哈,我找出来了!
sportdog 2004-11-10
  • 打赏
  • 举报
回复
if(menu.pads[index].rows.length>0) menu.board.style.display="";

menu.pads[index].rows.length=0
具体原因你慢慢查吧,不行就自己写个吧!
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2004-11-10 04:42
社区公告
暂无公告