Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

$(document).ready(function(){
        
        $(".vt").click( function(){
        $('.slider').each(function(){
             if($('li:last',this).width()+$('li:last',this).offset().left-$('li:first',this).offset().left<$('div',this).width()){
                  // enable the buttons
                  $('button',this).css('display','inline');
                  $('button.next',this).css('visibility','hidden');
             }
        });
    });
        
     // Enable or leave the keys
     $('.slider').each(function(){
          if($('li:last',this).width()+$('li:last',this).offset().left-$('li:first',this).offset().left>$('div',this).width()){
               // enable the buttons
               $('button',this).css('display','inline');
               $('button.prev',this).css('visibility','hidden');
          }
          if($('li:last',this).width()+$('li:last',this).offset().left-$('li:first',this).offset().left<$('div',this).width()){
               // enable the buttons
               $('button',this).css('display','inline');
               $('button.next',this).css('visibility','hidden');
          }
          $('li:first',this).css("color","#333333");
          $('li:first',this).css("font-weight","bold");
     });
     
     $('.slider ul li').click(function(){
          $('li',this.parentNode).css("color","#0066CC");
          $('li',this.parentNode).css("font-weight","normal");
          $(this).css("color","#333333");
          $(this).css("font-weight","bold");
     });
     
     $(".slider .next").click(function(){
          //Remove the exist selector
          //Set the width to the widest of either
          var $div =$('div',this.parentNode);
          var maxoffset = $('li:last',$div).width()+$('li:last',$div).offset().left - $('li:first',$div).offset().left - $div.width();
          var offset = Math.abs(parseInt( $('ul',$div).css('marginLeft') ));
          var diff = $div.width();

          if( offset >= maxoffset ){
                 return;
          }else if( offset + diff >= maxoffset ){
               diff = maxoffset - offset + 20;
               // Hide this
               $(this).css('visibility','hidden');
          }
          // enable the other
          $('.prev', this.parentNode).css('visibility','visible');         
          
          $("ul", $(this).parent() ).animate({
               marginLeft: "-=" + diff
          },400, 'swing');
     });
     
     $(".slider .prev").click(function(){
          var offset = Math.abs(parseInt( $('ul',this.parentNode).css('marginLeft') ));
          var diff = $('div',this.parentNode).width();
          if( offset <= 0 )
               return;
          else if ( offset - diff <= 0 ){
               $(this).css('visibility','hidden');          
               diff = offset;
          }
          $('.next', this.parentNode).css('visibility','visible');
          
          $("ul",$(this).parent()).animate({
               marginLeft: '+='+diff
          },400, 'swing');
     });
});