2013-12-16 4 views
0

스크롤 할 때 div 블록의 불투명도 값을 변경하려고합니다.window.scroll은 페이지 시작 부분에서 트리거됩니까?

 $(window).scroll(function(e) { 
      var s = $(window).scrollTop(), 
      opacityVal = (s/200.0); 
      $('.blur').css('opacity', opacityVal); 
    }); 

div 블록이 페이지 중간에있는 경우 div 블록에 도달하면 불투명도 값이 변경됩니다. div 블록에 도달했을 때 $ (window) .scroll()을 시작하려면 어떻게해야합니까?

+0

정확한! 창 하단이 div 상단에 있습니까? div가 표시되면 어떻게됩니까? ... div의 일부가 처음에 눈에 보일 수 있습니까? – TCHdvlp

+0

불명확하게해서 죄송합니다. div가 표시되는 시점을 말하고 싶습니다. – user1437251

답변

0

div 요소 scrollTop 및 창 높이를 계산에 포함시킵니다. 그러면 div가 보이는 창 영역의 맨 아래에있을 때 불투명 애니메이션이 시작됩니다. 또한 '클램프'기능을 추가하여 0-1 범위로 유지했습니다.

$(window).scroll(function(e) { 
    var s = $(window).scrollTop() - $('.blur').scrollTop() - $(window).height(), 
     opacityVal = Math.max(0, Math.min(1, s/400)); 
    $('.blur').css('opacity', opacityVal); 
}); 

참조 : http://jsfiddle.net/AGcYH/ "나는 DIV 블록에 도달했을 때"

관련 문제