如何用光滑滑块上的不同图像替换点?

How can I replace the dots with different images on slick slider?

我正在使用光滑的滑块。 (文档网站:https://kenwheeler.github.io/slick/)我正在尝试用图像替换点......非常像这样...... https://imgur.com/a/ImODX6R

我不是在寻找悬停功能。我正在寻找常规的光滑滑块功能,但可能有图像(而不是点)代表用户在单击它们时将看到的图像。

我可以想出如何用相同的图像替换所有的点,但这不是我要找的。我需要不同的图片。

<html>
      <head>
        <title>Webpage</title>
       <link rel="stylesheet" type="text/css" href="slick/slick.css"/>
       <link rel="stylesheet" type="text/css" href="slick/style.css"/>
      </head>
     <body>

        <div class="container">
          <div><img  alt="slide" src="images/img1.jpg"></div>
          <div><img  alt="slide" src="images/img2.jpg"></div>
          <div><img  alt="slide" src="images/img3.jpg"></div>
        </div>

       <script type="text/javascript" src="slick/jquery-1.11.0.min.js"></script>
       <script type="text/javascript" src="slick/jquery-migrate-1.2.1.min.js"></script>
       <script type="text/javascript" src="slick/slick.min.js"></script> 

       <script type="text/javascript">
        $('.container').slick({
                    slidesToShow: 1,
                    slidesToScroll: 1,
                    infinite: true,
                    dots: true,
                    arrows: false,
                    speed: 1,
                    touchMove: false,
                    responsive: [{
                        breakpoint: 769,
                        settings: {
                            arrows: false,
                            dots: true,
                            touchMove: true
                        }
                    }]
                });
      </script>
    </body>
</html>

到目前为止,我无法做出我期望的更改,也没有看到任何在线文档可以帮助我解决这个问题。

谢谢。

请仔细查看文档页面。答案已经在那里。只需创建两个不同的滑块,让第二个滑块触发第一个滑块。

 use -> asNavFor

在文档页面中搜索滑块同步。

 $('.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
});

编辑 固定图像作为导航的第二个选项是 slickGoTo 参数。

      
     jQuery(document).ready(function($) {
          $('.container').slick({
                          slidesToShow: 1,
                          slidesToScroll: 1,
                          infinite: true,
                          dots: true,
                          arrows: false,
                          speed: 1,
                          touchMove: false,
                          responsive: [{
                              breakpoint: 769,
                              settings: {
                                  arrows: false,
                                  dots: true,
                                  touchMove: true
                              }
                          }]
                      });
                
                
             $(document).on("click",".smallnav img",function(){
             var di = $(this).data("index");
             $( '.container' ).slick('slickGoTo', di);

});   
                
                
                });
.smallnav{
position:absolute;top:10px;left:10px;
}
.smallnav img{cursor:pointer;}
<link href="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.9.0/slick.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/slick-carousel/1.9.0/slick.min.js"></script>


<div class="container">
          <div><img  alt="slide" src="https://via.placeholder.com/600/808080/808080?Text=1Slideimg"></div>
          <div><img  alt="slide" src="https://via.placeholder.com/600/0000FF/808080?Text=2Slideimg"></div>
          <div><img  alt="slide" src="https://via.placeholder.com/600/ccc/808080?Text=3Slideimg"></div>
</div>

   <div class="smallnav">
   <div><img  alt="slide" src="https://via.placeholder.com/50/999/808080?Text=Slideimg" data-index="0"></div>
          <div><img  alt="slide" src="https://via.placeholder.com/50/999/808080?Text=Slideimg" data-index="1"></div>
          <div><img  alt="slide" src="https://via.placeholder.com/50/999/808080?Text=Slideimg" data-index="2"></div>
   </div>

我着手解决这个问题是为了寻找稍微不同的东西,并想复制我的解决方案以供其他人使用。我想用自定义图标替换这些点,但一直在努力让 CSS 正常工作。以下是解决我的问题的方法。注意:这里是SCSS不是直CSS.

.slick-dots{
    li.slick-active button:before{
      content: url("/path/to/icon.png");
    }
    li button:before{
      content: url("/path/to/icon.png");
    }
  }