切换多个表行
Toggle multiple table rows
我得到了这个表,用于菜单和子菜单项。它是PHP(读取菜单项和每个菜单项的所有子菜单项)和HTML的组合。
我需要的是找到一种只在主菜单项的子菜单项上切换可见性的方法。
我用javascript和jQuery尝试了很多东西(getelementbyID、byName、byClassname),但似乎都不起作用。。(也许它太简单了,我让它变得很难。)
我所做的是在DB表中每行获得主菜单项,按订单号排序。在发布包含内容的表行时,我查询子菜单DB表中的子菜单项。
我把子菜单项作为额外的正常TR行发布,所以它不是单独的表或任何东西,只是一个新的TR。
对于两个while循环,我都运行一个计数器,这样我就可以将其用作参考数。
我将这些子菜单项的显示设置为"无",但我不确定该从哪里开始。
例如:
<table>
<!-- column text //-->
<tr>
<th>1st var</th><th>2nd var</th><th>3rd var</th>
</tr>
<!-- mainmenu item //-->
<tr>
<td>1st var</td><td>2nd var</td><td>3rd var</td>
</tr>
<!-- submenu item //-->
<tr>
<td>1st var</td><td>2nd var</td><td>3rd var</td>
</tr>
<!-- next mainmenu item //-->
<tr>
<td>1st var</td><td>2nd var</td><td>3rd var</td>
</tr>
<!-- and so on //-->
如果我明白你在问什么,那么只需CSS就可以解决。您需要隐藏所有子菜单的子菜单类,也需要悬停时更改下一个同级表单元格显示属性(所以下一行)的菜单类。
因此,当您将鼠标悬停在第一行时,它将更改下一行的TD元素(最初它们的显示设置为无)。如果你不想在移动子菜单行后使其消失,你需要将子菜单行的悬停样式设置为表格单元格。
table{
width: 100%;
border: solid 1px #ccc;
}
th{background: #eee;}
.submenu>td{display: none; color: red;}
.menu:hover + .submenu>td{display: table-cell;}
.submenu:hover>td{display: table-cell;}
<table cellspacing="0" cellpadding="0">
<tr>
<th>1st var</th><th>2nd var</th><th>3rd var</th>
</tr>
<tr class="menu">
<td>Menu A1</td><td>Menu A2</td><td>Menu A3</td>
</tr>
<tr class="submenu">
<td>Submenu A1</td><td>Submenu A2</td><td>Submenu A3</td>
</tr>
<tr class="menu">
<td>Menu B1</td><td>Menu B2</td><td>Menu B3</td>
</tr>
<tr class="submenu">
<td>Submenu B1</td><td>Submenu B2</td><td>Submenu B3</td>
</tr>
</table>
相关文章:
- 没有找到相关文章