2013-01-08 2 views
3

throttle from underscore.js을 사용하고 싶지만 코드에서 구현하는 방법을 모르겠습니다.스로틀을 underscore.js에서 사용하는 방법

<script type="text/javascript"> 
    $(document).ready(function() { 
     /* Scroll event handler */ 
     $(window).bind('scroll',function(e){ 
      parallaxScroll(); 
     }); 
    }); 

    /* Scroll the background layers */ 
    function parallaxScroll(){ 
     var scrolled = $(window).scrollTop(); 
     $('header').css('top',(0+(scrolled*1))+'px'); 
     $('#balken0').css('top',(-600+(scrolled*1))+'px'); 
     $('#balken1').css('top',(-1465+(scrolled*1))+'px'); 
     $('#balken2').css('top',(-2320+(scrolled*1))+'px'); 
    } 
</script> 

감사합니다.

+4

'var throttled = _.throttle (parallaxScroll, 100); $ (창). 스크롤 (조절); – undefined

+0

나는 jquery에 매우 익숙하다. D –

+0

글쎄, 이것은 '스로틀 (throttle)'이하는 일을 잘 알고 있기 때문에 매우 좋다. – undefined

답변

2

타이머를 사용하여 동일한 결과를 얻을 수 있습니다. 하나의 함수 IMO에 대한 전체 라이브러리를 포함하는 요점은 없습니다.

이 시도 :

$(document).ready(function() { 
    var timer; 

    /* Scroll event handler */ 
    $(window).bind('scroll', function(e) { 
     clearTimeout(timer); 
     timer = setTimeout(parallaxScroll, 100); 
    }); 
}); 

이 대신 페이지를 스크롤 모든 픽셀에 대해 한 번 호출하는 스크롤이 종료 된 후 스크롤 이벤트 만 parralax 기능을 발사 것을 보장합니다.

+0

this was worked! 그러나 나는 이미 그것이 나를 위해 일하지 않는다고 언급했다! #balken이 전혀 움직이지 않기를 바란다 –

+2

'this this worked! 그러나 나는 이미 그것이 나를 위해 일하지 않는다고 언급했다! '무엇? 그건 말이되지 않습니다. –

+0

내 질문에 내 코멘트를 참조하십시오! 코드가 제대로 작동하지만 #balken이 전혀 움직이지 않기를 바랄뿐입니다! 내 문제는 파이어 폭스에서 위대한 일이지만 사파리가 아닙니다! –