javascript - 在 body scroll 上切换 css 和 class

标签 javascript jquery html css

我试图让我的 ok div 在滚动期间增加它的填充,但是当我停止滚动时,它恢复到原来的填充。但是我无法让滚动条工作。

fid: https://jsfiddle.net/f8an2fvd/

$(function(){
$('body').on('scroll', function (e){
$('.ok').toggleClass('nah');
});

});
.ok{
  background:black;
  width:100vw;
  height:200vh;
  position:relative;
  padding:50px;
}
.inner{
  width:100%;
  height:100%;
  background:blue;
}
.nah{
  padding:100px !important;
}
*{
  box-sizing:border-box;
  margin:0;
  padding:0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="ok">
  <div class="inner"></div>
</div>

最佳答案

检查下面的代码片段,这对您有帮助。

$(function() {
  $(window).scroll(function() {
    $('.ok').addClass('nah');
    clearTimeout($.data(this, "scrollCheck"));
    $.data(this, "scrollCheck", setTimeout(function() {
      $('.ok').removeClass('nah');
    }, 250));
  });
});
.ok {
  background: black;
  width: 100vw;
  height: 200vh;
  position: relative;
  padding: 50px;
}

.inner {
  width: 100%;
  height: 100%;
  background: blue;
}

.nah {
  padding: 100px !important;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="ok">
  <div class="inner"></div>
</div>

关于javascript - 在 body scroll 上切换 css 和 class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46558681/

相关文章:

javascript - 单击时添加类,然后单击时将其删除

javascript - 如何调试 Jsx 代码

javascript - 如何在 javascript 文件中使用 resx 文件。 .net 核心 3.1 mvc

javascript - 使用 js/jquery 的动态脚本元素放置

php - 后台刷新动态数据

javascript - 渲染所有 ng-repeat 时调用一个函数

javascript - 如果 angularjs 1.x 中显示了 ng 消息,我该如何禁用按钮?

javascript - 如何避免 JavaScript 中的全局变量?

html - :hover doesn't work for nested tag in li

javascript - 在处理简单 html 页面上的子元素时卡住了