如何将笔刷中的分页符号更改为文本? [英] how to change the pagination bullet in a swiper to text?

查看:102
本文介绍了如何将笔刷中的分页符号更改为文本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的项目中: http://moransh4.github.io/Luca/

我需要将最后一部分的swiper-pagination-bullet更改为此:

活动"变为绿色.

我阅读了(来自: http://idangero.us/swiper/api/)我可以用这个来定制:

 paginationBulletRender: function (index, className) {
        return '<span class="' + className + '">' + (index + 1) + '</span>';
    }

对不起,我迷路了,

该怎么做?

解决方案

您应该改用paginationCustomRender创建自定义设计.在每个div

中定义您的names

 var mySwiper2 = new Swiper('.swiper-container.shoes', {
  // Optional parameters
  pagination: '.pag-shoes',
  paginationClickable: true,
  nextButton: '.swiper-button-next',
  prevButton: '.swiper-button-prev',
  spaceBetween: 30,
  loop: true,
  paginationType: "custom",
  paginationCustomRender: function(swiper, current, total) {
    var names = [];
    $(".swiper-wrapper .swiper-slide").each(function(i) {
      names.push($(this).data("name"));
    });
    var text = "<span style='background-color:black;padding:20px;'>";
    for (let i = 1; i <= total; i++) {
      if (current == i) {
        text += "<span style='border-top:1px solid green;margin-right:4px;color:green;padding:10px;'>" + names[i] + "</span>";
      } else {
        text += "<span style='border-top:1px solid white;margin-right:4px;color:white;padding:10px;'>" + names[i] + "</span>";
      }

    }
    text += "</span>";
    return text;
  }

}); 

 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="http://moransh4.github.io/Luca/css/swiper.min.css">
<script src="http://moransh4.github.io/Luca/js/swiper.jquery.min.js"></script>
<div class="swiper-container shoes">
  <div class="swiper-wrapper">
    <div class="swiper-slide" data-name="LEVEL1">
      <img src="http://placehold.it/600x300" alt="">
    </div>
    <div class="swiper-slide" data-name="DESIGN">
      <img src="http://placehold.it/600x300" alt="">
    </div>
    <div class="swiper-slide" data-name="PERFORMANCE">
      <img src="http://placehold.it/600x300" alt="">
    </div>
    <div class="swiper-slide" data-name="DESIGN">
      <img src="http://placehold.it/600x300" alt="">
    </div>
  </div>
  <!-- Add Pagination -->
  <div class="swiper-pagination pag-shoes"></div>
  <!-- Add Arrows -->
  <div class="swiper-button-next">></div>
  <div class="swiper-button-prev">
    <</div>
  </div> 

In my project : http://moransh4.github.io/Luca/

I need to change the swiper-pagination-bullet at the last section to this:

The "active" change to green.

I read ( from : http://idangero.us/swiper/api/) that i can customize with this :

 paginationBulletRender: function (index, className) {
        return '<span class="' + className + '">' + (index + 1) + '</span>';
    }

Sorry i go lost with it,

How to do it?

解决方案

You should instead use paginationCustomRender to create custom design.Define your names in each div

var mySwiper2 = new Swiper('.swiper-container.shoes', {
  // Optional parameters
  pagination: '.pag-shoes',
  paginationClickable: true,
  nextButton: '.swiper-button-next',
  prevButton: '.swiper-button-prev',
  spaceBetween: 30,
  loop: true,
  paginationType: "custom",
  paginationCustomRender: function(swiper, current, total) {
    var names = [];
    $(".swiper-wrapper .swiper-slide").each(function(i) {
      names.push($(this).data("name"));
    });
    var text = "<span style='background-color:black;padding:20px;'>";
    for (let i = 1; i <= total; i++) {
      if (current == i) {
        text += "<span style='border-top:1px solid green;margin-right:4px;color:green;padding:10px;'>" + names[i] + "</span>";
      } else {
        text += "<span style='border-top:1px solid white;margin-right:4px;color:white;padding:10px;'>" + names[i] + "</span>";
      }

    }
    text += "</span>";
    return text;
  }

});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link rel="stylesheet" href="http://moransh4.github.io/Luca/css/swiper.min.css">
<script src="http://moransh4.github.io/Luca/js/swiper.jquery.min.js"></script>
<div class="swiper-container shoes">
  <div class="swiper-wrapper">
    <div class="swiper-slide" data-name="LEVEL1">
      <img src="http://placehold.it/600x300" alt="">
    </div>
    <div class="swiper-slide" data-name="DESIGN">
      <img src="http://placehold.it/600x300" alt="">
    </div>
    <div class="swiper-slide" data-name="PERFORMANCE">
      <img src="http://placehold.it/600x300" alt="">
    </div>
    <div class="swiper-slide" data-name="DESIGN">
      <img src="http://placehold.it/600x300" alt="">
    </div>
  </div>
  <!-- Add Pagination -->
  <div class="swiper-pagination pag-shoes"></div>
  <!-- Add Arrows -->
  <div class="swiper-button-next">></div>
  <div class="swiper-button-prev">
    <</div>
  </div>

这篇关于如何将笔刷中的分页符号更改为文本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆