Сообщение от danik.js
|
Если элементы разной высоты то только поочередным опросом element.getBoundingClientRect() и проверкой входит ли его rect в видимую область (viewport).
Если элементы одинаковые по высоте, то все сводится к простой арифметике.
|
Спасибо огромное! Натолкнули куда нужно!
Еще немного гугла, и получилось вот что:
function inWindow(s){
var scrollLeft = $(window).scrollLeft();
var windowWidth = $(window).width();
var currentEls = $(s);
var result = [];
currentEls.each(function(){
var el = $(this);
var offset = el.offset();
if(scrollLeft <= offset.left && (el.width() + offset.left) < (scrollLeft + windowWidth))
result.push(this);
});
return $(result);
}