【发布时间】:2017-06-26 22:38:49
【问题描述】:
我有一个包含多行信息的页面,由多个用户创建。我正在寻找一种在鼠标悬停时突出显示所有用户行的方法。
这个“Highlight multiple items on hover's condition”几乎解决了我的问题,但由于我的问题中的类或 id 是来自数据库的动态,并且包含来自数据库的标识符并且每次都是唯一的。我一直无法申请。
示例代码:https://jsfiddle.net/3cehoh78/
<table class="testtable">
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 1a</td>
<td class="cellclass">Sam</td>
<td class="cellclass">data</td>
</tr>
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 2a</td>
<td class="cellclass">Frodo</td>
<td class="cellclass">data</td>
</tr>
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 3a</td>
<td class="cellclass">Sam</td>
<td class="cellclass">data</td>
</tr>
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 4a</td>
<td class="cellclass">Legoman</td>
<td class="cellclass">data</td>
</tr>
</table>
<br>
<br>
<table class="testtable">
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 1b</td>
<td class="cellclass">Sauron</td>
<td class="cellclass">data</td>
</tr>
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 2b</td>
<td class="cellclass">Sam</td>
<td class="cellclass">data</td>
</tr>
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 3b</td>
<td class="cellclass">Sam</td>
<td class="cellclass">data</td>
</tr>
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 4b</td>
<td class="cellclass">Legoman</td>
<td class="cellclass">data</td>
</tr>
<tr id="uniqueIDthatcantbechanged">
<td class="cellclass">Line 5b</td>
<td class="cellclass">Frodo</td>
<td class="cellclass">data</td>
</tr>
</table>
在此示例中,我希望鼠标悬停在其中一个上时突出显示所有带有“Sam”的行,因此第 1a、3a、2b、3b 行。 我正在考虑在生成表时向所有 Sam 行添加一个类(Sam 具有唯一的用户 ID),但是我如何更改影响鼠标悬停时所有行(而不仅仅是一个)的 css。 请注意,我不能为所有唯一的用户 ID 预先添加 css 类,这只是一个示例。
【问题讨论】:
-
我假设用户 ID 是已知的(即传递给用户的页面)。我假设页面(即 JavaScript)可以跟踪用户添加/添加的行。然后应该可以将 用户 ID 用作用户添加的 al* 行上的一个类,或者简单地在它们上添加一个通用类(指示所有权)。
-
允许使用jQuery吗?
-
最简单的事情就是将它们用作数据属性....只要吐出一个 data-name="foo" 就可以轻松选择元素。似乎很奇怪,您不能更改吐出表格的代码来稍微改变它。没有它,您要么需要做一个昂贵的 contains() 选择器,要么在页面加载时循环遍历表格并设置属性
-
@domdom,这将是一个呈现给所有用户的视图,所以你以谁的身份登录并不重要。
-
@kevinb。 jQuery 很好。
标签: javascript css