我正在創建一個包含行的表。當我的mouseover任何行時,第一行正下方帶有 a 的另一行將display=None更改為display=""允許它出現。效果很好。我想放置一個onmouseleave=function(id),當鼠標離開這兩行時,它將再次隱藏第二行。例如,轉到第三行,或轉到頁面的一側。效果就像出現一個下拉抽屜,以便用戶可以查看更多信息并單擊按鈕。但是,當我將onmouseleave調用放在第一行(觸發第二行出現的調用)時,我無法將鼠標懸停在第二行上,否則它會被觸發消失,因為鼠標離開了第一行。如果我將鼠標懸停在第二行,那么除非首先將鼠標懸停在該行上,否則該行無法消失。因此,如果我要退出第一行的一側,它不會消失,因為鼠標一開始就不會越過它。我嘗試將兩行包裝在 a 中,但這種方式根本<div>無法調用該函數。onmouseleave=function(id)我猜一個<div>不能包兩個<tr>?如何讓這兩個表行合而為一onmouseleave=?這不允許我單擊第二行 - > https://jsfiddle.net/tvxpzud8/這根本不起作用-> https://jsfiddle.net/01w9js8x/function openDrawer(drawer_id) { var drawer = document.getElementById("drawer-" + drawer_id); drawer.style.display = "";}function closeDrawer(drawer_id) { drawer = document.getElementById("drawer-" + drawer_id); drawer.style.display = "none";}<table> <tr onmouseover="openDrawer(1)" onmouseleave="closeDrawer(1)"> <td>col 1-1</td> <td>col 1-2</td> <td>col 1-3</td> </tr> <tr id="drawer-1" style="display:none;"> <td>col 2-1</td> <td>col 2-2</td> <td>col 2-3</td> </tr> <tr onmouseover="openDrawer(2)" onmouseleave="closeDrawer(2)"> <td>col 3-1</td> <td>col 3-2</td> <td>col 3-3</td> </tr> <tr id="drawer-2" style="display:none;"> <td>col 4-1</td> <td>col 4-2</td> <td>col 4-3</td> </tr></table>
- 1 回答
- 0 關注
- 144 瀏覽
添加回答
舉報
0/150
提交
取消