我有一个15个方格的列,有一个“盒子”类。
我希望在向下滚动后逐个将它们从体内删除。
我尝试过但没有任何反应:
$(window).scroll(function() {
if ($('.box:first').offset().top + $('.box:first').height() < $(window).scrollTop()) {
$(this).remove();
};
})
有什么建议吗?
答案 0 :(得分:4)
将$(this)
替换为$'.box:first').remove()
。因为$(this)
引用窗口滚动对象而不是框元素。
答案 1 :(得分:3)
$(this)
指的是窗口对象。更具体一点:
if ( $('.box:first').offset().top
+ $('.box:first').height() < $(window).scrollTop() ) {
$('.box:first').remove();
}
<强> Demo 强>
答案 2 :(得分:1)
您可以使用first()
。
$(window).scroll(function() {
if ($('.box').first().offset().top + $('.box').first().height() < $(window).scrollTop()) {
$('.box').first().remove();
};
})
并参考当前第1个类别的非窗口代码中的窗口。
<强> Fiddle 强>