Javascript $(此).children()不工作

Javascript $(此).children()不工作,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有以下代码: <tr><td class="style3">test</td></tr> 问题是文本颜色不会改变,我尝试指定tr,但它不起作用,因此我假设针对td会起作用,因为style3类指定了颜色 如何使tr悬停时文本的颜色发生变化 这是一个在线演示jQuery CSS不支持重要的语法。如果您确实需要添加“!important”,您可能需要尝试CSS DOM cssText: $(this).children().css('cssText'

我有以下代码:

<tr><td class="style3">test</td></tr>
问题是文本颜色不会改变,我尝试指定tr,但它不起作用,因此我假设针对td会起作用,因为style3类指定了颜色

如何使tr悬停时文本的颜色发生变化


这是一个在线演示

jQuery CSS不支持重要的语法。如果您确实需要添加“!important”,您可能需要尝试CSS DOM cssText:

$(this).children().css('cssText', 'color:#222222 !important');

要指出的是,在大多数情况下,没有理由要添加一个!在内联样式中很重要,因为内联样式具有高优先级,所以您只需这样做即可覆盖另一个样式!重要规则。

当您添加一个不在
表中的
tr
时,浏览器会在不带表标签(
td
tr
)的情况下对其进行解释,并且只显示文本。如果检查元素,可以看到此行为

要解决此问题,请将其添加到表中。

<table>
    <tr>
        <td class="style3">test</td>
    </tr>
<table>

测试

@Jared Farrish:它会改变什么?(看了代码-
children()
可能会“更快”;-)你不需要`!要点`没有什么比直接指定的样式属性更重要。@YuryTarabanko:事实上,那不是真的:人们经常认为这是真的,但事实并非如此。带有
的足够具体的样式表规则!重要信息
可以覆盖内联样式。但是如果您添加
!重要信息
到获胜的
样式
()。@JaredFarrish:
find
遍历其中的所有子项,包括子项的子项。而
children
只返回所需的第一级子级。正如
所述,.find()和.children()方法是相似的,只是后者只在DOM树中向下移动一个级别。
因此如果只关心第一级子级,那么
find
将不正确使用。性能在这一点上是无关紧要的。@JaredFarrish:你问
为什么不找到('td')而不是children()?
。我试着为你回答这个问题。不需要粗鲁和不专业!那是不对的。带有
的非内联样式!重要信息
将覆盖内联样式(除非内联样式也有
!重要信息
)。
<table>
    <tr>
        <td class="style3">test</td>
    </tr>
<table>