为什么这不能用身体?在它使用窗口之前,我想这个使用body。但是,当我将其添加到代码中时,它不起作用。
这是我的fiddle
这是我的代码;
$(document).ready(function () {
$('.timeline li .dot:first').addClass("blur");
$('.timeline li .date:first').addClass("blur2");
});
var $window = $('body');
function isScrolledIntoView($elem, $window) {
var docViewTop = $window.scrollTop();
var docViewBottom = docViewTop + $window.height();
var elemTop = $elem.offset().top;
var elemBottom = elemTop + $elem.height();
return ((elemBottom <= docViewBottom) && (elemTop >= docViewTop));
}
var elements = $('.timeline li .dot');
$('body').on('scroll', function () {
elements.each(function () {
$this = $(this);
if (isScrolledIntoView($this, $window)) {
$this.addClass("blur");
}
else {
$this.removeClass("blur");
}
})
});
var elements2 = $('.timeline li .date');
$('body').on('scroll', function () {
elements2.each(function () {
$this = $(this);
if (isScrolledIntoView($this, $window)) {
$this.addClass("blur2");
}
else {
$this.removeClass("blur2");
}
})
});
它应该在滚动时使圆圈变大,但目前它没有这样做?
编辑:之前的fiddle,但这在我的代码中不起作用;
答案 0 :(得分:0)
我知道这个问题很旧,我不确定它是否仍然有用,但是将“ $('body')。on('scroll',function(){”替换为“ $(window).scroll(function (){“
scroll事件不适用于“ body”,而适用于“ window”。