Advertisement
Guest User

jquery

a guest
Aug 31st, 2021
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <script type='text/javascript'>
  2. jQuery(function($) {
  3.  
  4.   var list = $(".tco-scroller-content");
  5.   var items = list.children();
  6.   var lengthMinusOne = items.length - 1;
  7.   var target = 1;
  8.  
  9.  var prevItem = $(items[target]).addClass('is-active');
  10.   centerScroller ();
  11.  
  12.   $('.tco-scroller-item').click(function(){
  13.     target = $(this).index();
  14.     prevItem.removeClass('is-active');
  15.     prevItem = $(items[target]).addClass('is-active');
  16.     hideScrollerBtn ();
  17.     centerScroller ();
  18.   });  
  19.  
  20.   $(".is-fwd").click(function(){
  21.     target++;
  22.     if (target > lengthMinusOne) target = 0;
  23.     prevItem.removeClass('is-active');
  24.     prevItem = $(items[target]).addClass('is-active');
  25.     hideScrollerBtn ()
  26.     centerScroller ();
  27.   });
  28.  
  29.   $(".is-bck").click(function(){
  30.     target--;
  31.     if (target < 0) target = lengthMinusOne;
  32.     prevItem.removeClass('is-active');
  33.     prevItem = $(items[target]).addClass('is-active');
  34.     hideScrollerBtn ()
  35.     centerScroller ();
  36.   });
  37.  
  38.   function hideScrollerBtn (){
  39.     if ($('.tco-scroller-item').last().hasClass('is-active')) {
  40.       $('.is-fwd').animate({right: "-60"}, 300);
  41.     } else if ($('.tco-scroller-item').first().hasClass('is-active')) {
  42.       $('.is-bck').animate({left: "-60"}, 300);
  43.     } else {
  44.       $('.is-fwd').animate({right: "0"}, 100);
  45.       $('.is-bck').animate({left: "0"}, 100);
  46.   }};
  47.  
  48.   function centerScroller (){
  49.     var html = document.getElementsByTagName('html')[0];
  50.     var fontSize = parseInt(window.getComputedStyle(html)['fontSize']) * 9;
  51.     var outer = $('.tco-scroller');
  52.     var inner = $('.tco-scroller-inner');
  53.     var content = $('.tco-scroller-content');
  54.     var target = $('.tco-scroller-item.is-active');
  55.     var outerWidth = outer.width();
  56.     var containerWidth = inner.width();
  57.     var contentWidth = content.width();
  58.     var targetWidth = target.outerWidth(true);
  59.     var targetIndex = target.index();
  60.     var leftScreenOffset = (containerWidth - targetWidth) / 2;
  61.     var leftSiblingOffset = (targetWidth * targetIndex) + ((outerWidth / 2) - fontSize);
  62.     var scrollValue = (leftSiblingOffset - leftScreenOffset);
  63.     inner.animate( { scrollLeft : Math.max(0, scrollValue) }, 500 );
  64.   }
  65.  
  66. });
  67. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement