if语句不起作用白色文本颜色

好吧,基本上我想做的是切换p元素的颜色,但是如果条件始终为false,就好了:

Html:

<p id="brand-element-Samsung" onclick="itemSelectedSamsung()" style="color: #ff0000">Samsung</p>


Sass:

p
              width: 50%
              margin: 25px 23px 20px 23px
              padding: 15px 15px 15px 15px
              cursor: pointer
              &:hover
                color: #a3abb1
                transition: color .2s ease


Js:

function itemSelectedSamsung() {
  var inactiveColor = "#ff0000"
  var activeColor = "#2c3e50"
  var hoveredColor = "#a3abb1"
  var text = document.getElementById('brand-element-Samsung')
  text.style.transition = "all .2s ease"
  text.style.color === activeColor ? text.style.color = inactiveColor : text.style.color = activeColor
}

niewenge 回答:if语句不起作用白色文本颜色

打印出您的text.style.color。它将采用rgba()格式,而不是CSS规则所规定的HEX格式。这就是为什么它不起作用。

因此,您还应该将rgba()用于activeColor

BUT 更好的方法是检查element是否具有某些类并将颜色放入CSS规则中:

.brand-element-Samsung {
    color: #ff0000;
}

.brand-element-Samsung.active {
    color: #2c3e50;
}

$(document).on('click','.brand-element-Samsung',function () {
    $(this).toggleClass('active');
});
本文链接:https://www.f2er.com/3142476.html

大家都在问