지아부

오브젝트가 스크린 영역 안에 반 이상 나타났는지 체크하는 스크립트 입니다.

해당 오브젝트가 화면 영역 안에 반 이상 들어왔는지 체크하는 자바스크립트 함수입니다.

스크롤 처리할때 사용하려고 했는데 이거 생각하는 시간이 아깝고.. 플러그인 사용하자니 귀찮아서 적었습니다.

제이쿼리 없이 사용하시려면 제이쿼리 셀렉터 부분만 변경하시면 될 것 같고, 아니면 return만 참조하시면 될 것 같아요.

더 좋은 수식이나 방법이 있겠지만.. 혹시나 유용하실 분들이 있을 것 같아서 올려봅니다.


function isEntered(o)
{
var h = $(window).outerHeight(); //화면 높이

var top = $('html,body').scrollTop(); //화면 상단 스크롤 위치
var bot = top + h; //화면 하단 스크롤 위치

var oTop = o.offset().top; //오브젝트 상단 스크롤 위치
var oBot = oTop + o.outerHeight(); //오브젝트 하단 스크롤 위치

return (top < oTop ? (oTop <= bot && (oBot - bot) < (bot - oTop)) : ((oBot >= top) && ((oTop - top) < (oBot - top))));
}


아래와 같이 사용하시면 되겠습니다.

$(window).scroll(function(){

$(".has_anim").not(".animated").each(function(){
if(isEntered($(this)))
{
//화면에 나타났을때 액션
}
});
});
|

댓글 1개

좋아요..잘쓰겠습니다.감사합니다.
댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

+
제목 글쓴이 날짜 조회
8년 전 조회 7,033
8년 전 조회 6,300
8년 전 조회 1.1만
8년 전 조회 4,106
8년 전 조회 9,679
8년 전 조회 5,673
8년 전 조회 5,171
8년 전 조회 1.1만
8년 전 조회 1.8만
8년 전 조회 5,027
8년 전 조회 6,171
8년 전 조회 4,597
8년 전 조회 5,874
8년 전 조회 6,189
8년 전 조회 3,238
8년 전 조회 7,485
8년 전 조회 6,616
8년 전 조회 4,541
8년 전 조회 1.3만
8년 전 조회 4,157
8년 전 조회 6,576
8년 전 조회 4,531
8년 전 조회 5,741
8년 전 조회 6,196
8년 전 조회 5,909
8년 전 조회 6,830
8년 전 조회 5,962
8년 전 조회 4,393
8년 전 조회 9,865
8년 전 조회 4,637