jquery - 删除 css 悬停样式

标签 jquery html css dhtml

我标记了使用此规则切换悬停 CSS 样式的标记。当面板内有一个复选框时,我想删除背景图像样式。这可能吗?尽管失败了,但我尝试了以下方法。

CSS:

   .StaffMode .day ul li.standard a:hover table {
        background:url("test.png"); 
    }

JS:

   $("li.test table li").hover(
        function () {
            if($(this).children(':checked')) {
              alert('need to remove the background image style');  // shows as expected
              $(this).children('a').removeClass('hover');  // this doesnt work?
            }
        }
    );

最佳答案

您需要做的是对您的 :hover 规则施加一些限制,并让您的 JavaScript 更改元素以使其不再适用。像这样:

.has-hover:hover
{
    /* do whatever */
}

然后您的 JavaScript 执行此操作:

$(this).children('a').removeClass('has-hover');

你不能删除 :hover 但你可以删除 has-hover 类,因为规则需要两者,这将阻止 。 has-hover:hover 规则被应用。

关于jquery - 删除 css 悬停样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12747903/

相关文章:

php - 无法使用 xPath + PHP 将 HTML 节点的 outerHTML 存储到变量中

javascript - 防止Windows 8右键单击方形

javascript - ios 10 自动对焦不对焦输入

Jquery:.css 颜色覆盖:悬停

javascript - 如何获取悬停时出现的元素的宽度

javascript - 使用 jQuery 转义 HTML

jquery - 从特定表格单元格获取 href

jquery rating-plugin 在 bootstrap popover 中不起作用

css - 是否有用于包含特定文本的元素的 CSS 选择器?

javascript - 基准 Javascript : onclick in tag vs click in js