JQuery检测是否在视口中

时间:2017-06-12 04:27:45

标签: jquery

我错过了这个代码块,但我不知道是什么。我想检测元素何时在视口中并向该元素添加一个类。我的数学是:获取页面上元素的位置,减去窗口高度,如果页面向下,则会导致页面折叠与元素本身之间的距离。如果该距离大于或等于滚动的数量,则添加类。

var windowHeight = $(window).height();
var yPos = $(window).scrollTop();
var element = $('#element').offset().top;

if(element - windowHeight >= yPos) {
    $('#element').addClass('scrolled');
} else {
    $('#element').removeClass('scrolled');
}

1 个答案:

答案 0 :(得分:1)

你错过了第三行的结束语。

var element = $('#element).offset().top;

应该是:var element = $('#element').offset().top;

我不确切知道你需要什么,你刚才说你的代码中缺少一些东西。所以我只给你这个。如果不正确,请忽略我的回答。