窗口在所有分辨率中滚动到页脚的事件 - jquery

问题描述 投票:-2回答:1

我有html其中有标题页脚和div之间。我正在尝试在窗口滚动到页脚时创建一个事件。当页脚立即出现时,必须弹出一个警告,显示一条消息。

这是我的HTML内容http://jsfiddle.net/q4bw82gy/

我已经尝试了下面的jquery代码,但它不适用于桌面以外的分辨率

  $(window).scroll(function() {
 var scrollPosition = $(window).height() + $(window).scrollTop();
 var theight = ($('.banner-section').height()+$('.section-one').height()+$('.section-two').height()+$('.read-one').height()+$('.read-two').height()+$('.next-program').height())-($('.navbar-dark').height()+ 
 ($('.main-navigation').height()));

 var height1 = $(window).scrollTop();
 var height2 = $('.main').height()-$('.expand-section').height()-$('.ftr').height();
 if(height1 >=  theight){
  alert('message 1');
 }
 else{
alert('message 2');
  }
 });

请帮助提供更好的解决方案

javascript jquery html scroll offset
1个回答
1
投票

你想要这样的东西吗?

$(function() {
  $(window).scroll(function() {
    var footerTop = $('.ftr').position().top; // or .offset().top
    var scrollTop = $(window).scrollTop();
    var viewportHeight = $(window).height();

    if (footerTop <= scrollTop + viewportHeight) {
      console.log("true|" + footerTop + "|" + scrollTop + "|" + viewportHeight);//alert
    } else {
      console.log("false|" + footerTop + "|" + scrollTop + "|" + viewportHeight);//alert
    }
  });
});
© www.soinside.com 2019 - 2024. All rights reserved.