javascript中提供了一个方法Element.getboundingclientrect()可以获取当前元素的left,top,right,bottom的值。
//判断一个元素是否在可视区域内
function isInVisibleArea(elem){
if(!elem || !elem.getBoundingClientRect) return false;
var rect = elem.getBoundingClientRect();
if(rect.top < window.innerHeight && rect.bottom > 0 &&
rect.left < window.innerWidth && rect.right > 0){
return true;
}else{
return false;
}
}