jquery - 获取当前悬停的元素的非悬停 css backgroundColor Prop

标签 jquery css hover

我有一个行表,单击时会“展开”(通过在单击的行后插入新行),我正在使用 css 对行中的单元格进行斑马样式以及“突出显示”将鼠标悬停在行上时单元格的样式。

我希望插入的行与单击的行具有相同的背景颜色。

我正在尝试使用 jQuery 使用被点击行中第一个单元格的 backgroundColor 属性设置插入行的单元格的 backgroundColor。

但是,当我这样做时,我得到了“突出显示”颜色,因为我悬停在单击的行上 - 我想要非悬停值。

CSS:

.zebra-striped tbody tr:nth-child(odd) td {
    background-color: #f9f9f9;
}
.zebra-striped tbody tr:hover td {
    background-color: #f5f5f5;
}

jQuery:

table.find('tbody').find('tr').on('click',function() {
    var colourOfRow = $(this).find("td").filter(":first").css('backgroundColor');
    var newRows = $('<tr><td style="background-color:'+colourOfRow+';" colspan="'+numCols+'" rowspan="2">Fetching comment...</td></tr><tr></tr>');
    newRows.insertAfter($(this));
});

我确定我可以通过在需要使用之前存储颜色来解决这个问题,但我的问题是:

是否有我错过的 jQuery 选择器或其他一些众所周知的技巧?

最佳答案

不,你不能那样做。不要。

更新颜色/样式的更好方法是添加/删除类。在 CSS 中定义您的样式,然后添加/删除类以使显示确认。

尝试通过比较 jQuery 中的信息来切换状态是古怪的!

关于jquery - 获取当前悬停的元素的非悬停 css backgroundColor Prop ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8525217/

相关文章:

javascript - JSON 将数据从 HTML 发送到 PHP 并提醒用户该过程是否成功

javascript - 使用内联 block 列的网格系统并使用 javascript 删除 html 空白

jquery - 具有相对位置句柄显示/隐藏的水平滑动面板 - jQuery

javascript - CSS Hover 被停用

jQuery div 悬停功能在 Firefox 中不起作用

javascript - 使用后退按钮时 delegateEvents 无法按预期工作

html - 可编辑范围在 CSS HTML 下方有一个标签

javascript - 访问链接后 html 链接悬停不起作用?

javascript - 在鼠标悬停或悬停时绑定(bind)到动态生成的元素

javascript - jQuery - 如何使用parents()来访问1级和2级?