我試圖建立一個下拉菜單,當你將鼠標懸停在其中一個單元格上時,它會在其一側顯示一行。我真的很習慣使用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