各位老大拜托了,这是全部源码(javascript in mozilla)。。。。

srole 2004-09-20 05:53:57
发了几次帖子,在网上刨(pao)了好久,没有找到合适的办法解决,下面的代码在ie中运行良好,在netscape/mozilla中无法显示菜单项,声明:var vSrc = e.target || e.srcElement; 后,window.alert()和document.write()也无法运行(mozilla中),不知道是什么原因。
文件menu.htm:

<script language="javascript">
document.writeln(" <DIV id=menuDiv style=\"Z-INDEX: 2; VISIBILITY: hidden; WIDTH: 50px; POSITION: absolute; HEIGHT: 1px; BACKGROUND-COLOR: #ffffff\"></DIV>");

//下拉菜单相关代码
var h;
var w;
var l;
var t;
var topMar = 1;
var leftMar = -2;
var space = 1;
var isvisible;
var MENU_SHADOW_COLOR='#ffffff';//定义下拉菜单阴影色
var global = window.document
global.fo_currentMenu = null
global.fo_shadows = new Array


function HideMenu()
{
var mX;
var mY;
var vDiv;
var mDiv;
if (isvisible == true)
{
vDiv = document.all("menuDiv");
mX = window.event.clientX + document.body.scrollLeft;
mY = window.event.clientY + document.body.scrollTop;
if ((mX < parseInt(vDiv.style.left)) || (mX > parseInt(vDiv.style.left)+vDiv.offsetWidth) || (mY < parseInt(vDiv.style.top)-h) || (mY > parseInt(vDiv.style.top)+vDiv.offsetHeight)){
vDiv.style.visibility = "hidden";
isvisible = false;
}
}
}

function ShowMenu(vMnuCode,tWidth) {
var e = window.event ;
var vSrc = e.target || e.srcElement;
// var vSrc=e.target?e.target:e.srcElement;

vMnuCode = "<table border=0 id='menu' cellspacing=1 cellpadding=3 style='width:"+tWidth+"' class=MenuDropDown onmouseout='HideMenu()'><tr height=23><td nowrap align=left class=MenuDropDown>" + vMnuCode + "</td></tr></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;

}




s4='<a href=#>open</a><br>';
s4+=' <a href=#> save</a> <br>';
s4+='<a href=#>close</a><br>';
s4+='<a href=#>close all</a><br>';
s4+='<a href=#>exit</a><br>';

</script>
<table>
<tr>
<td>
<a href="#"
onmouseover ="javascript:ShowMenu(s4,80)"
onmouseout="HideMenu()" > File
</a></td>
</tr></table>
...全文
205 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
srole 2004-09-20
  • 打赏
  • 举报
回复
有那位DX用上面的代码调试出来的阿,我在这里学习了。。。。。
mjpclab 2004-09-20
  • 打赏
  • 举报
回复
是这样啊
srole 2004-09-20
  • 打赏
  • 举报
回复
就是function(e){ var vSrc=e.target?e.target:e.srcElement;}样子吧
mjpclab 2004-09-20
  • 打赏
  • 举报
回复
是系统自动传递的
srole 2004-09-20
  • 打赏
  • 举报
回复
把event对象传给函数的方法我试验过,好像不行。。。。
mjpclab 2004-09-20
  • 打赏
  • 举报
回复
netscape/mozilla 中e是以参数形式传递给函数的,看看arguments[0]中有没有event对象(也可能是在auguments[2]中,不太清楚位置……)
代码下载链接: https://pan.quark.cn/s/23ff226fe24b ### iTest自动化测试工具知识点详解#### 一、iTest自动化测试工具简介iTest是由业界领先测试设备制造商Spirent所研发的一款自动化测试工具。该工具为用户呈现了一个集成化的自动化测试解决方案,借助这一工具,用户能够完成软件及网络测试的编写与自动化执行。iTest不仅适用于专业的测试工程师,对于非测试人员来说,同样是一个功能强大的工具,能够协助他们对网络中的设备和应用进行访问和自动化操作。#### 二、iTest Lite快速入门指南iTest Lite是一款免费提供给用户的版本,其目的是为用户呈现一个简明的iTest产品概览。用户可以从官方网站(www.fanfaresoftware.com)获取并安装iTest Lite。此工具不仅能够支持用户进行软件和网络测试,还能用于对网络上的设备或应用程序进行管理和自动化。#### 三、iTest的工作流程- **主页内容**:在iTest被启动之后,主页内容将展示在右侧,而活动列表则位于左侧。主页上不仅包含欢迎消息,还会提供iTest工作流程的高级图示以及链接到Fanfare社区的入口,用户可以通过论坛帖子、教程视频等资源进一步了解iTest。 - **活动列表**:这是使用iTest功能的推荐起点。活动列表包含以下几个部分: - **连接设备**:一种便捷的方法来验证iTest是否能够连接到测试设备。 - **构建拓扑结构**:在这一步骤中,可以迅速定义一组想要进行测试的设备或应用程序。 - **开发测试用例**:创建一个自动化的测试用例,用于针对任何特定的拓扑结构进行测试。 - **查看测试报告**:访问个人...

87,994

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧