jquery - 向类中添加自定义伪 CSS

标签 jquery html css

这里有点棘手,我有以下类(class):

<li><a href="test.html" class="hvr-overline-from-left">Test</a></li>

这是它的 CSS:

.hvr-overline-from-left {
  display: inline-block;
  vertical-align: middle;
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}
.hvr-overline-from-left:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 100%;
  top: 0%;
  background: #47953F;
  height: 4px;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

这是向下滚动时应该改变的:

.hvr-overline-from-leftsmall:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 100%;
  top: 15%;
  background: #47953F;
  height: 4px;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}

这是我尝试过的:

$(document).ready(function($){
    var line = $('.hvr-overline-from-left:before');

    $(window).scroll(function () {
        if ($(this).scrollTop() > 13.35) {
            line.addClass("hvr-overline-from-leftsmall:before");
        } else if($(this).scrollTop() >= 0) {
            line.removeClass("hvr-overline-from-leftsmall:before");
        }
    });
});

这当然行不通,我的问题是如何才能使它正常工作?我不知道我应该调用哪个类来更改伪元素。

最佳答案

您只需添加 class hvr-overline-from-leftsmall,无需 :before 选择器;例如:

line.addClass("hvr-overline-from-leftsmall");
// No :before here -----------------------^

(当然以后的 removeClass 也是一样。)

如果它是在 hvr-overline-from-left 类的规则之后定义的,它将在任何样式冲突中优先。

:before 是规则选择器的一部分,而不是类。

关于jquery - 向类中添加自定义伪 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48867263/

相关文章:

javascript - 从列表选项生成文本字段

html - 选择所有带有 css 渐变样式的元素

html - 背景图像 Div(Twitter Bootstrap)

html - 如何在第 n 个子选择器上匹配类选择器

jquery datepicker 显示按钮单击,有没有办法确定显示状态(显示/隐藏)?

javascript - 在 Codeigniter 端访问 Ajax POST 变量时出现问题

javascript - 使用 JavaScript 过滤下拉菜单

jquery - 在其他脚本之前异步加载 jquery

javascript - 图像作为复选框

jquery - 特定表格的行和列的CSS