JQuery 无法识别滚动上的单个类更改

标签 jquery css

我正在为我的新网站创建一个较小的滚动标题,所以我慢慢地向标题中的每个元素应用新类,并通过滚动上的 jQuery 添加/删除它们。它运行良好,但脚本没有更改其中一个类,我不确定为什么。脚本如下所示:

<script>
$(function(){
 var shrinkHeader = 200;
  $(window).scroll(function() {
    var scroll = getCurrentScroll();
      if ( scroll >= shrinkHeader ) {
       $('.Header').addClass('small');
       $('.Logo').addClass('small');
       $('.HOME').addClass('small');
       $('.CREATORS').addClass('small');
       $('.VERTICALS').addClass('small');
       $('.XENOVA_').addClass('small');
       $('.ABOUT').addClass('small');
       $('.CONTACT').addClass('small');
       $('.LOG_IN').addClass('small');
       $('div.ICON_BG1').addClass('small');
       $('ul#menu li ul.sub-menu').addClass('small');
       $('ICON_BG_2').addClass('small');
    }
    else {
        $('.Header').removeClass('small');
        $('.Logo').removeClass('small');
        $('.HOME').removeClass('small');
        $('.CREATORS').removeClass('small');
        $('.VERTICALS').removeClass('small');
        $('.XENOVA_').removeClass('small');
        $('.ABOUT').removeClass('small');
        $('.CONTACT').removeClass('small');
        $('.LOG_IN').removeClass('small');
        $('div.ICON_BG1').removeClass('small');
        $('ul#menu li ul.sub-menu').removeClass('small');
        $('ICON_BG_2').removeClass('small');
    }
  });
function getCurrentScroll() {
    return window.pageYOffset;
    }
});
</script>

未添加的类是“ICON_BG_2”。我尝试更改 CSS 和脚本上的名称,没有雪茄。以下是与之关联的类:

.Icon_BG_2 {
  background: url("images/IconBG2.png") no-repeat;
  position: absolute;
  margin-left: 960px;
  top: 26px;
  width: 45px;
  height: 48px;
  z-index: 82;
 -webkit-transition: background-image .5s;
}
.Icon_BG_2.small {
  background: url("images/IconBG2.png") no-repeat;
  position: absolute;
  margin-left: 960px;
  top: 26px;
  width: 35px;
  height: 35px;
  z-index: 82;
  -webkit-transition: background-image .5s;
}
.Icon_BG_2:hover {
  background: url("images/IconBGHover2.png") no-repeat;
  position: absolute;
  margin-left:960x;
  top: 26px;
  width: 45px;
  height: 48px;
  z-index: 82;
  -webkit-transition: background-image .5s;
}

我还通过为 ICON_BG_2 下的更多元素添加函数进行了测试,它们起作用了,所以这不是某种最大/过载交易。

JSFiddle 可以在这里找到:http://jsfiddle.net/qTTHL/2/

最佳答案

您的代码正在寻找元素 <Icon_BG_2>...</Icon_BG_2> ,显然不是您想要的!

您忘记了 .表示类名。

关于JQuery 无法识别滚动上的单个类更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23022999/

相关文章:

javascript - 将div内容保存在cookie中

javascript - 使用 css 属性反向线性渐变

javascript - 如何在 firefox 和 explorer 中以相同的 html/javascript/jQuery 显示文本?

html - 水平弹出菜单 - 隐藏选项

HTML5 原生输入类型 ="time"元素,如何在 Chrome 中定位伪元素/样式下拉列表?

javascript - ajax 调用后 php echo javascript 函数不起作用?

jquery - 提交按钮不适用于 html 代码

javascript - 如何在onsen ui 应用程序列表中显示滚动条

javascript - 仅显示网站的特定部分 - 通过 CSS 选择?

javascript - 自动换行 : ellipsis without css