Advertisement
Guest User

Untitled

a guest
Nov 11th, 2019
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. /* Home slider */
  2. if($('.js-topslider').length){
  3.  
  4. var tsTime = 5;
  5. var $tsBar,
  6. $tsSlick,
  7. tsIsPause,
  8. tsTick,
  9. tsPercentTime;
  10.  
  11. $tsSlick = $('.js-topslider');
  12. $tsSlick.slick({
  13. dots: true,
  14. arrows: true,
  15. infinite: true,
  16. slidesToShow: 1,
  17. slidesToScroll: 1,
  18. autoplay: true,
  19. autoplaySpeed: tsTime * 1000,
  20. draggable: true,
  21. mobileFirst: true,
  22. pauseOnDotsHover: true,
  23. appendDots: $(".topslider-dots"),
  24. nextArrow: $(".topslider-next"),
  25. prevArrow: $(".topslider-prev"),
  26. speed: 500
  27. });
  28.  
  29. $tsBar = $(".js-slider-progress");
  30.  
  31. $('.js-topslider').on({
  32. mouseenter: function() {
  33. tsIsPause = true;
  34. },
  35. mouseleave: function() {
  36. tsIsPause = false;
  37. }
  38. });
  39.  
  40. function tsStartProgressbar() {
  41. tsResetProgressbar();
  42. tsPercentTime = 0;
  43. tsIsPause = false;
  44. tsTick = setInterval(tsInterval, 10);
  45. }
  46.  
  47. function tsInterval() {
  48. if(tsIsPause === false) {
  49. tsPercentTime += 1 / (tsTime+0.1);
  50. $tsBar.css({
  51. width: tsPercentTime+"%"
  52. });
  53.  
  54. if(tsPercentTime >= 100) {
  55. $tsSlick.slick('slickNext');
  56. tsStartProgressbar();
  57. }
  58. }
  59. }
  60.  
  61. function tsResetProgressbar() {
  62. $tsBar.css({
  63. width: 0+'%'
  64. });
  65. clearTimeout(tsTick);
  66. }
  67.  
  68. tsStartProgressbar();
  69.  
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement