sync.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. <?php
  2. require_once '../settings.php';
  3. $settings = get_settings();
  4. ?>
  5. <!DOCTYPE html>
  6. <html lang="en">
  7. <head>
  8. <meta charset="UTF-8">
  9. <meta name="viewport" content="width=device-width,initial-scale=1">
  10. <title>Sync</title>
  11. <link rel="stylesheet" href="../../../../../dist/css/themes/splide-<?php echo $settings['theme'] ?>.min.css">
  12. <link rel="stylesheet" href="../../assets/css/styles.css">
  13. <script src="../../../../../dist/js/splide.js"></script>
  14. <script>
  15. document.addEventListener( 'DOMContentLoaded', function () {
  16. var splide01 = new Splide( '#splide01', {
  17. width : 800,
  18. type : 'loop',
  19. heightRatio: 0.3,
  20. perPage : 1,
  21. pagination : false,
  22. keyboard : false,
  23. cover: true,
  24. breakpoints: {
  25. 1000: {
  26. destroy: true,
  27. },
  28. },
  29. } );
  30. var splide02 = new Splide( '#splide02', {
  31. // type : 'loop',
  32. width : 600,
  33. fixedWidth : 100,
  34. fixedHeight : 56,
  35. gap : '.7em',
  36. isNavigation : true,
  37. focus : 'center',
  38. pagination : false,
  39. rewind : true,
  40. keyboard : false,
  41. dragMinThreshold: {
  42. mouse: 10,
  43. touch: 10,
  44. },
  45. } );
  46. var splide03 = new Splide( '#splide03', {
  47. width : 100,
  48. type : 'loop',
  49. direction : 'ttb',
  50. height : 300,
  51. fixedWidth : 100,
  52. fixedHeight : 56,
  53. gap : '.7em',
  54. isNavigation: true,
  55. pagination : false,
  56. keyboard : false,
  57. } );
  58. splide01.sync( splide02 );
  59. splide01.mount();
  60. splide02.mount();
  61. splide03.mount();
  62. // splide01.on( 'move', function () { console.log( 1 ) } );
  63. // splide02.on( 'move', function () { console.log( 2 ) } );
  64. // splide03.on( 'move', function () { console.log( 3 ) } );
  65. // Attempts to sync after mount.
  66. splide01.sync( splide03 );
  67. } );
  68. </script>
  69. </head>
  70. <body>
  71. <div id="splide01" class="splide">
  72. <div class="splide__track">
  73. <ul class="splide__list">
  74. <?php
  75. for ( $i = 0; $i < 10; $i++ ) {
  76. echo '<li class="splide__slide">';
  77. printf( '<img src="../../assets/images/pics/slide%1$02d.jpg" alt="Alt Slide %1$d">%1$02d', $i + 1 );
  78. echo '</li>' . PHP_EOL;
  79. }
  80. ?>
  81. </ul>
  82. </div>
  83. </div>
  84. <div id="splide02" class="splide">
  85. <div class="splide__track">
  86. <ul class="splide__list">
  87. <?php
  88. for ( $i = 0; $i < 10; $i++ ) {
  89. echo '<li class="splide__slide">';
  90. printf( '<img src="../../assets/images/pics/slide%1$02d.jpg" alt="Thumbnail %1$d">', $i + 1 );
  91. echo '</li>' . PHP_EOL;
  92. }
  93. ?>
  94. </ul>
  95. </div>
  96. </div>
  97. <div id="splide03" class="splide">
  98. <div class="splide__track">
  99. <ul class="splide__list">
  100. <?php
  101. for ( $i = 0; $i < 10; $i++ ) {
  102. echo '<li class="splide__slide">';
  103. printf( '<img src="../../assets/images/pics/slide%1$02d.jpg" alt="Thumbnail %1$d">', $i + 1 );
  104. echo '</li>' . PHP_EOL;
  105. }
  106. ?>
  107. </ul>
  108. </div>
  109. </div>
  110. </body>
  111. </html>