我想做的是获取视口中相对于其父容器的可见元素。检查是通过其父级的动画滚动触发的。
我从这里找到了一些代码,这些代码可以检查元素是否在视口中,但不知何故我无法正确处理。
这是检查它是否在视口中的当前函数。
function checkInView(elem,partial)
{
var container = $("#timeline_wrapper");
var contHeight = container.height();
var contTop = container.scrollTop();
var contBottom = contTop + contHeight ;
var elemTop = $(elem).offset().top - container.offset().top;
var elemBottom = elemTop + $(elem).height();
var isTotal = (elemTop >= 0 && elemBottom <=contHeight);
var isPart = ((elemTop < 0 && elemBottom > 0 ) || (elemTop > 0 && elemTop <= container.height())) && partial ;
return isTotal || isPart ;
}
这是我正在尝试制作的全套小提琴:http: //jsfiddle.net/j3toxicat3d/zrnCU/