javascript - 页面滚动时的div位置

标签 javascript jquery html css

我左右有两个 div,在左侧部分,我在滚动时将位置固定,当滚动即将完成时,我删除位置并将其设置为底部零。类似于 flipkart 的概念在他们的产品详细信息页面上。

这是我的代码。 Javascript

$(window).scroll(function() {
if ($(window).scrollTop() > 10 ) {   
   $(".fixedSlider").addClass("DivAffix");
   $(".fixedSlider").removeClass("DivBottom");
  if($(window).scrollTop() + $(window).height() > $(document).height()  - 100) {

    $(".fixedSlider").removeClass("DivAffix");
    $(".fixedSlider").addClass("DivBottom");
  }  
} else {

}
});

CSS

.DivAffix{position: fixed;width: 480px;}
.DivBottom{position: absolute;bottom: 0}    
.fixedSlider { min-height: 516px;}

它工作正常,但是当我提高分辨率时,左侧部分无法正常工作。它抽搐并降至底部。

最佳答案

实际上,在滚动 > 10 之后使用您的代码,它将添加/删除类,然后在滚动高于 window 之后同时 > 10 > 您的代码将在每个滚动条上添加/删除然后删除/添加类..

$(window).scroll(function() {
   if ($(window).scrollTop() > 10  && $(window).scrollTop() + $(window).height() < $(document).height()  - 100) {   
     $(".fixedSlider").addClass("DivAffix").removeClass("DivBottom");
  }
  if($(window).scrollTop() + $(window).height() > $(document).height()  - 100) {
    $(".fixedSlider").removeClass("DivAffix").addClass("DivBottom");
  }
});

这是演示 但我在 css 上做了一点更改以注意到操作

$(window).scroll(function() {
  if ($(window).scrollTop() > 10  && $(window).scrollTop() + $(window).height() < $(document).height()  - 100) {   
    $(".fixedSlider").addClass("DivAffix").removeClass("DivBottom");
  }
  if($(window).scrollTop() + $(window).height() > $(document).height()  - 100) {
    $(".fixedSlider").removeClass("DivAffix").addClass("DivBottom");
  }
});
#content{
  height : 2000px;
}
.DivAffix{position: fixed;width: 100px ; bottom : 0;}
.DivBottom{position: relative;bottom: 0}    
.fixedSlider {min-height: 116px;background : red;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="content">Content</div>
<div class="fixedSlider">fixedSlider</div>

关于javascript - 页面滚动时的div位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44574995/

相关文章:

javascript - 在复选框的输入文本中一一追加

javascript - 使用 Javascript 隐藏同名的 DIV

javascript - 数组的 ES5 与 ES6 Javascript

javascript - li 元素占据屏幕的整个宽度

javascript - html 表单从网页传递到子 iframe 时不保留其元素的属性?

javascript - 使用 prevUntil jquery 查找 pre html 元素

html - 侧导航栏箭头处于事件状态

javascript - 如何在将它引用到类时动态创建一个 div?

Javascript:返回字符串的两部分......

javascript - HTML/Javascript - 停止左/右箭头更改下拉菜单选项