我看了一下,你的程序只在一个table内扫描各行,而你的主菜单和子菜单不在同一个table里!
解决方案 »
- js监听chrome关闭事件
- 提问,手工添加cell后,如何隐藏cell中的<td 控件,style='display:none'不生效
- 为什么这段代码在火狐下不起作用,在IE7.0下没有问题
- 如何把“层”的背景颜色设为半透明的
- 如何得到值???
- 怎么在两个列表框之间传值
- 关于隐藏源代码的问题?
- 关于在页面嵌入新页面导致新页面的$(document).ready(fn) 方法被执行两次的问题
- 新手提问关于hibernate多对一双向关联的问题
- vue组件 子组件的模板直接使用v-for无法渲染
- 一个新网站欢迎大家提意见http://www.hrbhome.net
- 如何实现象windows资源管理器那样树节点的自由拖动
<head>
<meta http-equiv="Content-Language" content="zh-cn">
<title>菜单</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" href="include/Font.css">
</head>
<script language="JavaScript">
<!--
function setColor()
{
window.event.cancelBubble=true;
objSRC=window.event.srcElement; for(i=0;i<table1.children(0).children.length;i++)
{
table1.children(0).children(i).bgColor="#637fb9";
objFont=table1.children(0).children(i).children(1);
while(objFont.tagName!="FONT")
{
objFont=objFont.children(0);
}
objFont.color="";
}
for(i=0;i<table2.children(0).children.length;i++)
{
table2.children(0).children(i).bgColor="#637fb9";
objFont=table2.children(0).children(i).children(1);
while(objFont.tagName!="FONT")
{
objFont=objFont.children(0);
}
objFont.color="";
}
objSRC.bgColor="#637fb9";
window.event.srcElement.color="#FFFF66";
}
-->
</script>
<SCRIPT LANGUAGE="JavaScript">
<!--
var bV=parseInt(navigator.appVersion);
var NS4=(document.layers) ? true : false;
var IE4=((document.all)&&(bV>=4))?true:false;
var ver4 = (NS4 || IE4) ? true : false; function expandIt(){return}
function expandAll(){return}
function nomsg(){self.status="";} if(ver4){
isExpanded = false; function getIndex(el) {
ind = null;
for (i=0; i<document.layers.length; i++) {
whichEl = document.layers[i];
if (whichEl.id == el) {
ind = i;
break;
}
}
return ind;
}
function arrange() {
nextY = document.layers[firstInd].pageY + document.layers[firstInd].document.height;
for (i=firstInd+1; i<document.layers.length; i++) {
whichEl = document.layers[i];
if (whichEl.visibility != "hide") {
whichEl.pageY = nextY;
nextY += whichEl.document.height;
}
}
}
function initIt(){
if (NS4) {
for (i=0; i<document.layers.length; i++) {
whichEl = document.layers[i];
if (whichEl.id.indexOf("Child") != -1) whichEl.visibility = "hide";
}
arrange();
}
else {
tempColl = document.all.tags("DIV");
for (i=0; i<tempColl.length; i++) {
if (tempColl(i).className == "child") tempColl(i).style.display = "none";
}
}
}
function expandIt(el) {
if (!ver4) return;
if (IE4) {expandIE(el)} else {expandNS(el)}
} function expandIE(el) {
whichEl = eval(el + "Child");
whichIm = event.srcElement; if (whichEl.style.display == "none") {
whichEl.style.display = "block";
whichIm.src = "images/midminus.gif";
}
else {
whichEl.style.display = "none";
whichIm.src = "images/midplus.gif";
}
}
function expandNS(el) {
whichEl = eval("document." + el + "Child");
whichIm = eval("document." + el + "Parent.document.images['imEx']");
if (whichEl.visibility == "hide") {
whichEl.visibility = "show";
whichIm.src = "images/midminus.gif";
}
else {
whichEl.visibility = "hide";
whichIm.src = "images/midplus.gif";
}
arrange();
} function showAll() {
for (i=firstInd; i<document.layers.length; i++) {
whichEl = document.layers[i];
whichEl.visibility = "show";
}
} }
//-->
</SCRIPT>
<body leftmargin="0" topmargin="0" bgcolor="#FFFFFF">
<table border="0" cellspacing="0" cellpadding="0" width="155" height="600">
<tr>
<td height="655" width="154" valign="top" bgcolor="#637fb9">
<div align="center">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td height="46">
<div align="center"><img src="images/sys01.gif" width="154" height="83"></div>
</td>
</tr>
</table>
<br>
<br> <table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="13%">
</td>
<td width="87%" valign="top"><img src="images/line.gif" width="16" height="16"></td>
</tr>
</table> <table width="100%" border="0" cellspacing="0" cellpadding="0" id="table1">
<tr bgcolor="#637fb9">
<td height="30" width="36" bgcolor="#637fb9">
<table width="100%" border="0" cellspacing="0" cellpadding="0" height="30">
<tr>
<td width="37">
</td>
<td width="10" background="images/line.gif" valign="top"><img src="images/lastblk.gif" width="16" height="16"></td>
</tr>
</table>
</td>
<td height="30" width="118" valign="top"> <a href="syse/syse01.htm" target="mainFrame" onClick="setColor()">
<font color="#FFFF66">人事变动</font></a>
</td>
</tr> <tr bgcolor="#637fb9">
<td width="36" bgcolor="#637fb9">
<table width="100%" border="0" cellspacing="0" cellpadding="0" height="30">
<tr>
<td width="37">
</td>
<td width="10" background="images/line.gif" valign="top"><img src="images/lastblk.gif" width="16" height="16"></td>
</tr>
</table>
</td> <td width="118" height="30" valign="top"> <a href="syse/syse02.htm" target="mainFrame" onClick="setColor()">
<font color="">人事档案</font></a>
</td>
</tr> <tr bgcolor="#637fb9">
<td width="36" bgcolor="#637fb9" valign="top">
<table width="100%" border="0" cellspacing="0" cellpadding="0" height="20">
<tr>
<td width="37" height="20">
</td>
<td width="10" background="images/line.gif" valign="top" height="20"><a href="#" onClick="expandIt('elOne'); return false"><img src="images/midminus.gif" width="16" height="16" border="0"></a></td>
</tr>
</table>
</td> <td width="118" valign="top"> <a href="#" onClick="setColor()">
<font color="">组织管理</font></a>
</td>
</tr>
</table> <div ID="elOneChild" CLASS="child" style="margin-left: 0.5px">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="24%">
<table width="100%" border="0" cellspacing="0" cellpadding="0" height="50">
<tr>
<td width="20" height="30">
</td>
<td width="17" background="images/line.gif" valign="top" height="30"></td>
</tr>
</table>
</td>
<td width="76%">
<table width="98%" border="0" cellspacing="0" cellpadding="0" align="center" id="table2">
<tr bgcolor="#637fb9">
<td width="18%" background="images/line.gif"><img src="images/lastblk.gif" width="16" height="16"></td>
<td width="82%" height="25"><a href="syse/syse03-1.htm" target="mainFrame" onClick="setColor()">
<font color="">组织框架</font><a></a></a>
</td>
</tr>
<tr bgcolor="#637fb9">
<td width="18%" valign="top"><img src="images/lastblk.gif" width="16" height="16">
</td>
<td width="82%" height="25"><a href="syse/syse03-2.htm" target="mainFrame" onClick="setColor()">
<font color="">公司信息</font><a></a></a>
</td>
</tr>
</table> </td>
</tr>
</table>
</div>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="14%">
</td>
<td width="86%" valign="top"><img src="images/bj.gif" width="97" height="8"></td>
</tr>
</table>
</div>
</td>
<td width="1" valign="top" background="images/bj04.gif" height="655">
</td>
</tr>
</table>
</body>
<SCRIPT LANGUAGE="JavaScript1.2">
<!--
if(NS4){
firstEl = "elOneParent";
firstInd = getIndex(firstEl);
showAll();
arrange();
}
//-->
</SCRIPT>
<SCRIPT LANGUAGE="JavaScript"> <!-- hide function goHist(a) { history.go(a); } //--> </SCRIPT>
</html>
以上是笨办法
<table width="98%" border="0" cellspacing="0" cellpadding="0" align="center" id="table2">
跟include/Font.css文件無關﹔
以你目前的思路或者說方法無法實現你的意圖﹐因為你的父層和子層不屬于同一層﹐你可以加這一句alert(objSRC.parentNode.children.length);檢查出點擊時執行的事件并沒有檢查出父層或子的數目﹐所以只會改變同層的顏色。我試圖把他們放到同一層來處理﹐但這樣就很難實現收合(或許可以﹐但我不想費太多的神)。
針對你的情況我可以給你提供一些思路﹕
1.每個font都給一個ID﹐同時加一個hidden物件﹐所記錄的ID的FONT COLOR=默認顏色﹐然后把點擊ID號記錄到HIDDEN﹐同時改顏色﹔
2.你用一個循環檢測完父層(應該說最高層)的children時﹐每個children再檢測有多少個子children﹐并一一改色﹐這個方法我不知能否實現﹐思路而已﹔
3.你這個方法就我的感覺真的很笨﹐你可以配合class,ID來實現﹐我看你的代碼應該是樹狀吧(沒圖﹐不肯定)﹐其實有很多例子你可以找﹐不過我沒有現成的﹐不然給你一個。
以上純屬個人見解﹐可能會限于水平發表有誤﹐僅供參考。
1.每個font都給一個ID﹐同時加一個hidden物件用于記錄點擊的ID﹐點擊時所記錄的ID的FONT COLOR=默認顏色﹐然后把點擊ID號記錄到HIDDEN﹐同時改顏色﹔