Guest User

Untitled

a guest
Mar 21st, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. let $roller = $('#management_roller .manage-roller');
  2. let rollerChild = $roller.children();
  3. let childNumber = rollerChild.length;
  4. let number = 0;
  5.  
  6. const getTranslteX = () => {
  7. const matrix = $roller.css('transform').split(',');
  8. return Math.abs(parseInt(matrix[12] || matrix[4] || 0));
  9. }
  10.  
  11. const howBig = () => {
  12. const windowW = window.innerWidth;
  13. if(windowW <= 576) {
  14. return 1;
  15. } else if(windowW <= 768) {
  16. return 2;
  17. } else if(windowW <= 1200) {
  18. return 3;
  19. } else {
  20. return 4;
  21. }
  22. }
  23.  
  24.  
  25. const setX = (n) => {
  26. $roller.css({'transform' : 'translateX(-' + n +'px)'});
  27. }
  28.  
  29.  
  30.  
  31. $('#roller_links a').click(function(e) {
  32. e.preventDefault();
  33.  
  34. $('#roller_links a').removeClass('active');
  35. const id = $(this).attr('id');
  36. const rollerP = $roller.parent();
  37.  
  38. $(this).addClass('active');
  39. rollerP.hide();
  40. $roller = $('#' + id + '_roller .manage-roller');
  41. rollerChild = $roller.children();
  42. number = 0;
  43. $roller.parent().show();
  44. setX(number * $(rollerChild[number]).outerWidth());
  45. });
  46.  
  47.  
  48.  
  49. $('#roller-n').click(function() {
  50. if(childNumber - howBig() === number) return;
  51. number++;
  52. setX(getTranslteX() +
  53. $(rollerChild[number]).outerWidth());
  54. });
  55.  
  56. $('#roller-p').click(function() {
  57. if(number === 0) return;
  58. number--;
  59. setX(Math.abs(getTranslteX() -
  60. $(rollerChild[number]).outerWidth()));
  61. });
  62.  
  63.  
  64. $(window).on('resize', function() {
  65. if(childNumber - howBig() < number) number =
  66. childNumber - howBig();
  67. setX(number * $(rollerChild[number]).outerWidth());
  68. });
Add Comment
Please, Sign In to add comment