我试图建立一个下拉菜单,当你将鼠标悬停在其中一个单元格上时,它会在其一侧显示一行。我真的很习惯使用DOM和JavaScript。如何从JavaScript中的数组访问DOM节点?
我遇到的问题是,我创建的数组似乎不能访问我认为应该的东西。这只是我的语法,还是我需要以不同的方式处理?这里是我的代码:
window.onload = function() {
var tableID = "strokerKitMenu";
var table = document.getElementById(tableID);
var tableRows = table.getElementsByTagName("tr");
var tableCell = [];
var counter = 0;
for (i = 0; i < tableRows.length; i++) {
tableCell[i] = new Array();
tableCell[i].push(tableRows[i].getElementsByTagName("td"));
}
for (i = 0; i < tableCell.length; i++) {
tableCell[0, i].style.display = "block"; //This doesn't compile
alert(tableCell[0, i].Text); //This comes back "undefined"
for (j = 1; j < tableCell[i].length; j++) //I haven't even tested this part yet
{
tableCell[i][j].onmouseover = function showCell() {
tableCell[i][j + 1].style.display = "block";
}
tableCell[i][j].onmouseout = function hideCell() {
this.style.display = "none";
}
} //end inner for loop
} //end outer for loop
}
请不要改变你的问题反映答案中给出的代码。它使答案过时并令人困惑。 – 2012-02-23 18:18:32