js滚动算法问题,求助。急

先上地址:
https://jsfiddle.net/4q6LLk4z/

图片描述

图片描述

我截图了, 意思是如果红色盒子到了终点的话, 让红色盒子的底部 回到灰色盒子的底部。

PS: 红色的高度是不固定的。 我想了半天都不知道怎么算。

求大神在我原有的代码修改下。

阅读 2.2k
2 个回答

直接上代码:

var h = $('.box').height() - $('.container').height();
if(h>0){
  $('.box').animate({
    top:-h+'px'
  },1000);
}

更新答案

你是要回弹效果么?

var box_h = $('.box').height();
var con_h = $('.container').height();

$('.box').animate({
  top:-box_h
},1000,function(){
    $('.box').animate({
      top:"+="+con_h
    })
});
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题