Team:SDSZ China/js/numscroller-10

/**

  • jQuery scroroller Plugin 1.0
  • http://www.tinywall.net/
  • Developers: Arun David, Boobalan
  • Copyright (c) 2014
  • /

(function($){

   $(window).on("load",function(){
       $(document).scrollzipInit();
       $(document).rollerInit();
   });
   $(window).on("load scroll resize", function(){
       $('.numscroller').scrollzip({
           showFunction    :   function() {
                                   numberRoller($(this).attr('data-slno'));
                               },
           wholeVisible    :     false,
       });
   });
   $.fn.scrollzipInit=function(){
$('body').prepend("
" );
   };
   $.fn.rollerInit=function(){
       var i=0;
       $('.numscroller').each(function() {
           i++;
          $(this).attr('data-slno',i); 
          $(this).addClass("roller-title-number-"+i);
       });        
   };
   $.fn.scrollzip = function(options){
       var settings = $.extend({
           showFunction    : null,
           hideFunction    : null,
           showShift       : 0,
           wholeVisible    : false,
           hideShift       : 0,
       }, options);
       return this.each(function(i,obj){
           $(this).addClass('scrollzip');
           if ( $.isFunction( settings.showFunction ) ){
               if(
                   !$(this).hasClass('isShown')&&
                   ($(window).outerHeight()+$('#scrollzipPoint').offset().top-settings.showShift)>($(this).offset().top+((settings.wholeVisible)?$(this).outerHeight():0))&&
                   ($('#scrollzipPoint').offset().top+((settings.wholeVisible)?$(this).outerHeight():0))<($(this).outerHeight()+$(this).offset().top-settings.showShift)
               ){
                   $(this).addClass('isShown');
                   settings.showFunction.call( this );
               }
           }
           if ( $.isFunction( settings.hideFunction ) ){
               if(
                   $(this).hasClass('isShown')&&
                   (($(window).outerHeight()+$('#scrollzipPoint').offset().top-settings.hideShift)<($(this).offset().top+((settings.wholeVisible)?$(this).outerHeight():0))||
                   ($('#scrollzipPoint').offset().top+((settings.wholeVisible)?$(this).outerHeight():0))>($(this).outerHeight()+$(this).offset().top-settings.hideShift))
               ){
                   $(this).removeClass('isShown');
                   settings.hideFunction.call( this );
               }
           }
           return this;
       });
   };
   function numberRoller(slno){
           var min=$('.roller-title-number-'+slno).attr('data-min');
           var max=$('.roller-title-number-'+slno).attr('data-max');
           var timediff=$('.roller-title-number-'+slno).attr('data-delay');
           var increment=$('.roller-title-number-'+slno).attr('data-increment');
           var numdiff=max-min;
           var timeout=(timediff*1000)/numdiff;
           //if(numinc<10){
               //increment=Math.floor((timediff*1000)/10);
           //}//alert(increment);
           numberRoll(slno,min,max,increment,timeout);
           
   }
   function numberRoll(slno,min,max,increment,timeout){//alert(slno+"="+min+"="+max+"="+increment+"="+timeout);
       if(min<=max){
           $('.roller-title-number-'+slno).html(min);
           min=parseInt(min)+parseInt(increment);
           setTimeout(function(){numberRoll(eval(slno),eval(min),eval(max),eval(increment),eval(timeout))},timeout);
       }else{
           $('.roller-title-number-'+slno).html(max);
       }
   }

})(jQuery);