我正在尝试构建一个函数,该函数检查一组div是否在可见视口内。我有以下代码:
$(window).scroll(function(){
var $w = $(window);
var bottom_edge_y = $w.scrollTop() + $w.height();
var top_edge_y = $w.scrollTop();
$('#itin_list').children('div').each(function () {
var scrollTop = $(window).scrollTop(),
divOffset = $('#'+ $(this).attr('id')).offset().top,
if(top_edge_y < divOffset< bottom_edge_y){
alert("caught");
}
});
)};
但是,即使
divOffset
不在if条件中指定的范围内,此代码也会每次发出警报。有什么问题提前致谢。 最佳答案
您的if条件有问题。您不能像这样在一个比较中比较3个数字。
Instead of `if(top_edge_y < divOffset< bottom_edge_y),
用这个:
if(top_edge_y < divOffset && divOffset<bottom_edge_y)`