2010-07-15 3 views
3

언제 페이지 요소가 뷰어 화면에서 켜지거나 꺼져 있는지 확인할 수 있기를 원합니다. 특히, 사용자가 캔버스를 지나서 스크롤하고 다시 사용자 브라우저에서 다시 볼 수있을 때 html 5 캔버스 (Processing.js) 스크립트를 "끌"수있게하고 싶습니다.jQuery : 보이는 html 요소에 대한 알림

의미가 있습니까? DOM이 캔버스 스크립트를 켜고 끄기 위해 ajax를 통해 알림을 시작하는 방법이 있어야한다고 생각합니다.

감사합니다.

$(window).bind('scroll', function(){ 
    var $canvas = $('#canvas'); 
    var pos  = $canvas.offset(); 
    var total = pos.top + $($canvas).height(); 
    var wndtop = $(this).scrollTop(); 

    if(wndtop <= pos || wndtop >= total){ 

    } 

}); 
+0

http://www.appelsiini.net/projects/viewport를 사용해보십시오. 현재 볼 수 있는지 여부에 따라 요소를 선택할 수 있습니다. 모든 스크롤 이벤트에서 확인할 수 있습니까? – Adam

답변

3

당신에게 :

/////////// EDIT (최종 코드) 여기 ////////// 내가 사용하는 최종 코드 window scrolling에 이벤트 처리기를 연결할 수 있습니다.

$(window).bind('scroll', function(){ 
    var $canvas = $('#hlogo'); 
    var pos  = $canvas.offset(); 
    var wndtop = $(this).scrollTop(); 
    var wndleft = $(this).scrollLeft(); 

    if(wndtop <= pos.top && wndleft <= pos.left) 
     $canvas.hide(); 
}); 
0

처럼 당신은 할 수 DOM 속성을 element.y, element.style,heightwindow.scrollY를 사용하여.

관련 문제