Slick carousel demo

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <title>Slick Carousel Demo</title>
   <!-- jQuery -->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
   <!-- Slick CSS -->
   <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.c…">
   <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick-theme…">
   <!-- Slick JS -->
   <script src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.8.1/slick.min.js"></script>
   <style>
       body {
           font-family: 'Arial', sans-serif;
           max-width: 1200px;
           margin: 0 auto;
           padding: 20px;
           background-color: #f5f7fa;
           color: #333;
       }
       
       h1, h2 {
           text-align: center;
           color: #2c3e50;
       }
       
       .demo-section {
           background: white;
           border-radius: 8px;
           box-shadow: 0 2px 10px rgba(0,0,0,0.1);
           padding: 20px;
           margin-bottom: 30px;
       }
       
       .carousel-item {
           height: 200px;
           margin: 0 10px;
           display: flex !important;
           align-items: center;
           justify-content: center;
           color: white;
           font-size: 24px;
           font-weight: bold;
           border-radius: 4px;
           position: relative;
           overflow: hidden;
       }
       
       .carousel-item img {
           width: 100%;
           height: 100%;
           object-fit: cover;
           position: absolute;
           top: 0;
           left: 0;
           z-index: 1;
       }
       
       .carousel-item span {
           position: relative;
           z-index: 2;
           background-color: rgba(0, 0, 0, 0.5);
           padding: 5px 10px;
           border-radius: 4px;
       }
       
       .custom-arrows .slick-prev:before, 
       .custom-arrows .slick-next:before {
           color: #8e44ad;
       }
       
       .code-block {
           background: #f8f9fa;
           padding: 15px;
           border-radius: 4px;
           margin: 15px 0;
           overflow-x: auto;
           font-family: monospace;
           color: #333;
           font-size: 14px;
       }
       
       .controls {
           margin: 15px 0;
           text-align: center;
       }
       
       button {
           background: #3498db;
           color: white;
           border: none;
           padding: 8px 15px;
           margin: 0 5px;
           border-radius: 4px;
           cursor: pointer;
           transition: background 0.3s;
       }
       
       button:hover {
           background: #2980b9;
       }
       
       .slider-nav .item {
           cursor: pointer;
           padding: 10px;
           text-align: center;
       }
       
       .slider-nav .item.slick-current {
           font-weight: bold;
           background: #e0e0e0;
       }
   </style>
</head>
<body>
   <h1>Slick Carousel Demo</h1>
   <p style="text-align: center;">Explore different configurations and features of the Slick carousel with Unsplash images</p>
   
   <div class="demo-section">
       <h2>Implementation Note</h2>
       <p>This demo uses random images from Picsum Photos. Each time you refresh the page, you'll get different images.</p>
       <p>The URL format includes a random parameter to ensure unique images for each slide:</p>
       <div class="code-block">
           https://picsum.photos/800/400?random=1
       </div>
   </div>
   
   <!-- Basic Carousel -->
   <div class="demo-section">
       <h2>Basic Carousel</h2>
       <div class="basic-carousel basic">
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=1" alt="Random Image 1" />
               <span>Slide 1</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=2" alt="Random Image 2" />
               <span>Slide 2</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=3" alt="Random Image 3" />
               <span>Slide 3</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=4" alt="Random Image 4" />
               <span>Slide 4</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=5" alt="Random Image 5" />
               <span>Slide 5</span>
           </div>
       </div>
       <div class="code-block">
           $('.basic-carousel').slick({
               dots: true,
               infinite: true,
               speed: 500,
               fade: true,
               cssEase: 'linear'
           });
       </div>
   </div>
   
   <!-- Multiple Items -->
   <div class="demo-section">
       <h2>Multiple Items</h2>
       <div class="multiple-carousel multiple">
           <div class="carousel-item">
               <img src="https://picsum.photos/400/300?random=6" alt="Random Image 6" />
               <span>Slide 1</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/400/300?random=7" alt="Random Image 7" />
               <span>Slide 2</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/400/300?random=8" alt="Random Image 8" />
               <span>Slide 3</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/400/300?random=9" alt="Random Image 9" />
               <span>Slide 4</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/400/300?random=10" alt="Random Image 10" />
               <span>Slide 5</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/400/300?random=11" alt="Random Image 11" />
               <span>Slide 6</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/400/300?random=12" alt="Random Image 12" />
               <span>Slide 7</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/400/300?random=13" alt="Random Image 13" />
               <span>Slide 8</span>
           </div>
       </div>
       <div class="code-block">
           $('.multiple-carousel').slick({
               infinite: true,
               slidesToShow: 3,
               slidesToScroll: 1
           });
       </div>
   </div>
   
   <!-- Responsive Display -->
   <div class="demo-section">
       <h2>Responsive Display</h2>
       <div class="responsive-carousel responsive">
           <div class="carousel-item">
               <img src="https://picsum.photos/300/200?random=14" alt="Random Image 14" />
               <span>Slide 1</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/300/200?random=15" alt="Random Image 15" />
               <span>Slide 2</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/300/200?random=16" alt="Random Image 16" />
               <span>Slide 3</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/300/200?random=17" alt="Random Image 17" />
               <span>Slide 4</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/300/200?random=18" alt="Random Image 18" />
               <span>Slide 5</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/300/200?random=19" alt="Random Image 19" />
               <span>Slide 6</span>
           </div>
       </div>
       <div class="code-block">
           $('.responsive-carousel').slick({
               dots: true,
               infinite: false,
               speed: 300,
               slidesToShow: 4,
               slidesToScroll: 2,
               responsive: [
                   {
                       breakpoint: 1024,
                       settings: {
                           slidesToShow: 3,
                           slidesToScroll: 2,
                           infinite: true,
                           dots: true
                       }
                   },
                   {
                       breakpoint: 768,
                       settings: {
                           slidesToShow: 2,
                           slidesToScroll: 1
                       }
                   },
                   {
                       breakpoint: 480,
                       settings: {
                           slidesToShow: 1,
                           slidesToScroll: 1
                       }
                   }
               ]
           });
       </div>
   </div>
   
   <!-- Custom Navigation -->
   <div class="demo-section">
       <h2>Custom Navigation</h2>
       <div class="custom-arrows-carousel custom-arrows">
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=20" alt="Random Image 20" />
               <span>Slide 1</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=21" alt="Random Image 21" />
               <span>Slide 2</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=22" alt="Random Image 22" />
               <span>Slide 3</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=23" alt="Random Image 23" />
               <span>Slide 4</span>
           </div>
       </div>
       <div class="controls">
           <button class="prev-button">Previous</button>
           <button class="next-button">Next</button>
       </div>
       <div class="code-block">
           $('.custom-arrows-carousel').slick({
               slidesToShow: 1,
               slidesToScroll: 1,
               arrows: false,
               fade: true
           });
           
           $('.prev-button').click(function() {
               $('.custom-arrows-carousel').slick('slickPrev');
           });
           
           $('.next-button').click(function() {
               $('.custom-arrows-carousel').slick('slickNext');
           });
       </div>
   </div>
   
   <!-- Autoplay -->
   <div class="demo-section">
       <h2>Autoplay</h2>
       <div class="autoplay-carousel autoplay">
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=24" alt="Random Image 24" />
               <span>Slide 1</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=25" alt="Random Image 25" />
               <span>Slide 2</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=26" alt="Random Image 26" />
               <span>Slide 3</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=27" alt="Random Image 27" />
               <span>Slide 4</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=28" alt="Random Image 28" />
               <span>Slide 5</span>
           </div>
       </div>
       <div class="controls">
           <button class="play-button">Play</button>
           <button class="pause-button">Pause</button>
       </div>
       <div class="code-block">
           $('.autoplay-carousel').slick({
               slidesToShow: 1,
               slidesToScroll: 1,
               autoplay: true,
               autoplaySpeed: 2000
           });
           
           $('.pause-button').click(function() {
               $('.autoplay-carousel').slick('slickPause');
           });
           
           $('.play-button').click(function() {
               $('.autoplay-carousel').slick('slickPlay');
           });
       </div>
   </div>
   
   <!-- Synced Sliders -->
   <div class="demo-section">
       <h2>Synced Sliders</h2>
       <div class="slider-for">
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=29" alt="Random Image 29" />
               <span>Slide 1</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=30" alt="Random Image 30" />
               <span>Slide 2</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=31" alt="Random Image 31" />
               <span>Slide 3</span>
           </div>
           <div class="carousel-item">
               <img src="https://picsum.photos/800/400?random=32" alt="Random Image 32" />
               <span>Slide 4</span>
           </div>
       </div>
       <div class="slider-nav" style="margin-top: 10px;">
           <div class="item">
               <img src="https://picsum.photos/100/60?random=33" alt="Thumbnail 1" style="width: 100%; height: 60px; object-fit: cover;" />
           </div>
           <div class="item">
               <img src="https://picsum.photos/100/60?random=34" alt="Thumbnail 2" style="width: 100%; height: 60px; object-fit: cover;" />
           </div>
           <div class="item">
               <img src="https://picsum.photos/100/60?random=35" alt="Thumbnail 3" style="width: 100%; height: 60px; object-fit: cover;" />
           </div>
           <div class="item">
               <img src="https://picsum.photos/100/60?random=36" alt="Thumbnail 4" style="width: 100%; height: 60px; object-fit: cover;" />
           </div>
       </div>
       <div class="code-block">
           $('.slider-for').slick({
               slidesToShow: 1,
               slidesToScroll: 1,
               arrows: false,
               fade: true,
               asNavFor: '.slider-nav'
           });
           
           $('.slider-nav').slick({
               slidesToShow: 3,
               slidesToScroll: 1,
               asNavFor: '.slider-for',
               dots: true,
               centerMode: true,
               focusOnSelect: true
           });
       </div>
   </div>

   <script>
       $(document).ready(function(){
           // Initialize Basic Carousel
           $('.basic-carousel').slick({
               dots: true,
               infinite: true,
               speed: 500,
               fade: true,
               cssEase: 'linear'
           });
           
           // Initialize Multiple Items Carousel
           $('.multiple-carousel').slick({
               infinite: true,
               slidesToShow: 3,
               slidesToScroll: 1
           });
           
           // Initialize Responsive Carousel
           $('.responsive-carousel').slick({
               dots: true,
               infinite: false,
               speed: 300,
               slidesToShow: 4,
               slidesToScroll: 2,
               responsive: [
                   {
                       breakpoint: 1024,
                       settings: {
                           slidesToShow: 3,
                           slidesToScroll: 2,
                           infinite: true,
                           dots: true
                       }
                   },
                   {
                       breakpoint: 768,
                       settings: {
                           slidesToShow: 2,
                           slidesToScroll: 1
                       }
                   },
                   {
                       breakpoint: 480,
                       settings: {
                           slidesToShow: 1,
                           slidesToScroll: 1
                       }
                   }
               ]
           });
           
           // Initialize Custom Arrows Carousel
           $('.custom-arrows-carousel').slick({
               slidesToShow: 1,
               slidesToScroll: 1,
               arrows: false,
               fade: true
           });
           
           // Custom arrows functionality
           $('.prev-button').click(function() {
               $('.custom-arrows-carousel').slick('slickPrev');
           });
           
           $('.next-button').click(function() {
               $('.custom-arrows-carousel').slick('slickNext');
           });
           
           // Initialize Autoplay Carousel
           $('.autoplay-carousel').slick({
               slidesToShow: 1,
               slidesToScroll: 1,
               autoplay: true,
               autoplaySpeed: 2000
           });
           
           // Autoplay controls
           $('.pause-button').click(function() {
               $('.autoplay-carousel').slick('slickPause');
           });
           
           $('.play-button').click(function() {
               $('.autoplay-carousel').slick('slickPlay');
           });
           
           // Initialize Synced Sliders
           $('.slider-for').slick({
               slidesToShow: 1,
               slidesToScroll: 1,
               arrows: false,
               fade: true,
               asNavFor: '.slider-nav'
           });
           
           $('.slider-nav').slick({
               slidesToShow: 3,
               slidesToScroll: 1,
               asNavFor: '.slider-for',
               dots: true,
               centerMode: true,
               focusOnSelect: true
           });
       });
   </script>
</body>
</html>