Swiperでスライド画面を実装しています。
スライドを操作中に特定のスライドを削除したいため、公式サイトにあるデモと同じページを使って、スライドを削除するコードを書き加えました。
以下の「スライド削除実行(slideDelete())」をクリックすると1枚目と3枚目のスライドが削除されます。
ここまでは良いのですが、スライド4枚目(以降)を表示しているときに削除を実行すると、表示しているスライドが4から5へ変わってしまいます。
スライド4を表示したまま、1枚目と3枚目のスライドを背後で削除したいのですが、スライド4を固定表示させたままスライド削除する方法が見つかりません(<div class="swiper-slide">をDOMから直接削除しても、スライド位置が4から5へずれてしまいます)。
上記を実現できるアイディア・方法がお分かりの方いらっしゃいましたらよろしくお願いいたします。
HTML
1<!DOCTYPE html> 2<html lang="en"> 3<head> 4 <meta charset="utf-8"> 5 <title>Swiper demo</title> 6 <!-- Link Swiper's CSS --> 7 <link rel="stylesheet" href="../package/css/swiper.min.css"> 8 9 <!-- Demo styles --> 10 <style> 11 html, body { 12 position: relative; 13 height: 100%; 14 } 15 body { 16 background: #eee; 17 font-family: Helvetica Neue, Helvetica, Arial, sans-serif; 18 font-size: 14px; 19 color:#000; 20 margin: 0; 21 padding: 0; 22 } 23 .swiper-container { 24 width: 100%; 25 height: 100%; 26 } 27 .swiper-slide { 28 text-align: center; 29 font-size: 18px; 30 background: #fff; 31 32 /* Center slide text vertically */ 33 display: -webkit-box; 34 display: -ms-flexbox; 35 display: -webkit-flex; 36 display: flex; 37 -webkit-box-pack: center; 38 -ms-flex-pack: center; 39 -webkit-justify-content: center; 40 justify-content: center; 41 -webkit-box-align: center; 42 -ms-flex-align: center; 43 -webkit-align-items: center; 44 align-items: center; 45 } 46 </style> 47</head> 48<body> 49 <!-- Swiper --> 50 <div class="swiper-container"> 51 <div class="swiper-wrapper"> 52 <div class="swiper-slide">Slide 1</div> 53 <div class="swiper-slide">Slide 2</div> 54 <div class="swiper-slide">Slide 3</div> 55 <div class="swiper-slide">Slide 4</div> 56 <div class="swiper-slide">Slide 5</div> 57 <div class="swiper-slide">Slide 6</div> 58 <div class="swiper-slide">Slide 7</div> 59 <div class="swiper-slide">Slide 8</div> 60 <div class="swiper-slide">Slide 9</div> 61 <div class="swiper-slide">Slide 10</div> 62 </div> 63 </div> 64 65 66 <div onclick="slideDelete()">スライド削除実行</div> 67 68 <!-- Swiper JS --> 69 <script src="../package/js/swiper.min.js"></script> 70 71 <!-- Initialize Swiper --> 72 <script> 73 74 var swiper = new Swiper('.swiper-container'); 75 76 function slideDelete(){ 77 swiper.removeSlide([0,2]); 78 } 79 80 </script> 81</body> 82</html> 83
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/09/22 02:23
2019/09/22 02:33