javascript - 仅从特定时刻开始数据滚动速度

标签 javascript jquery html css

我正在使用 data-scroll-speed= 来控制某个 div 的滚动速度。 数据滚动速度作为标签输入:

<div id="myDiv1" data-scroll-speed="3">this is a test</div>.

我想要的是 div 不采用由 data-scroll-speed 控制的滚动速度,直到另一个 div 的 (id= "myDiv2") 底部边缘高于浏览器窗口的底部边缘。否则 myDiv1 必须以正常速度滚动。如何实现?

最佳答案

$(function() {
  var $myDiv1 = $('#myDiv1');
  var $myDiv2 = $('#myDiv2');

  var bottom = $myDiv2.position().top + $myDiv2.outerHeight(true);
  
  $(window).on('scroll', function() {
    if ($(this).scrollTop() >= bottom) {
      console.log('Scroll Speed Set!');
    }
  });
});
*,
*:before,
*:after {
  box-sizing: border-box;
}

body {
  height: 800px;
  border: 1px solid black;
  padding: 20px;
}

div {
  padding: 25px;
  border: 1px solid black;
  height: 100px;
  width: 100px;
}

#myDiv2 {
  margin-top: 50px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div id="myDiv1" data-scroll-speed="3">this is a test</div>
<div id="myDiv2">myDiv2</div>

关于javascript - 仅从特定时刻开始数据滚动速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43591654/

相关文章:

javascript - 编辑不可变状态项

javascript - 引用错误: "Swal is not defined"

javascript - 为什么我无法使用 jQuery 的 .keypress()、.keydown() 和 .keyup() 事件正确比较两个字符串?

javascript - Safari - HTML5 音频不会在下一个流中自动播放

javascript - 使用javascript切换div的动态高度

javascript - 顶部按钮上的响应式滚动

html - 光标在 flex 应用程序上时禁用鼠标滚轮滚动?

javascript - Jquery 动画卡在图像中间的动画中

javascript - 如何记住点击的 href 并重定向到它 javascript

javascript - RowReorder 扩展不保存行的位置