slick.js中是否可以显示点但不能单击它们?

在简单的选项dots: true中显示点。默认情况下,可以单击这些点以浏览幻灯片。我要禁用此功能,以便他们只在那里查看,这样您就可以知道幻灯片显示的距离。

我试过了

$('.slick-dots li button').on('click', function(e){
    e.preventDefault();
    alert();
});


单击后警报确实起作用,因此选择器正确,但我认为preventDefault()可能在某处被否决。是否有一种禁用此功能的好方法(无需通过在按钮上放置空元素来对其进行破解)

谢谢!

最佳答案

是的,您可以(只需对代码做一些小改动即可):-

 $('.slick-dots li button').on('click', function(e){
    e.stopPropagation(); // use this
});




$(".slider").slick({
  autoplay: true,
  dots: true
});

$('.slick-dots li button').on('click', function(e){
    e.stopPropagation(); // use this
});

.slider {
    width: auto;
    margin: 30px 50px 50px;
}

.slick-slide {
    background: green;
    color: white;
    padding: 40px 0;
    font-size: 30px;
    text-align: center;
}

.slick-prev:before,
.slick-next:before {
    color: black;
}

.slick-dots {
    bottom: -30px;
    pointer-events: none
}

.slick-slide:nth-child(odd) {
     background: blue;
}

<link rel = "stylesheet" href="https://rawgit.com/kenwheeler/slick/master/slick/slick.css">

<link rel = "stylesheet" href="https://rawgit.com/kenwheeler/slick/master/slick/slick-theme.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<script src="https://rawgit.com/kenwheeler/slick/master/slick/slick.js"></script>

<section class="slider">
    <div>slide1</div>
    <div>slide2</div>
    <div>slide3</div>
    <div>slide4</div>
    <div>slide5</div>
    <div>slide6</div>
</section>

09-30 16:38
查看更多