Bootstrap carousel aynı anda birden çok çerçeve


110

Bootstrap 3 carousel ile elde etmeye çalıştığım efekt bu

görüntü açıklamasını buraya girin

Her seferinde yalnızca bir kare göstermek yerine, N kareyi yan yana kaydırarak görüntüler. Sonra kaydırdığınızda (veya otomatik olarak kaydığında), slayt grubunu olduğu gibi kaydırır.

Bu , bootstrap 3'ün atlıkarınca ile yapılabilir mi? Başka bir jQuery eklentisi aramaya gitmem gerektiğini umuyorum ...


Özür dilerim Bootstrap 4 uyarlandı, ancak kolayca değiştirilebilir stackoverflow.com/a/42098033/4796923
Oleg V Karun

Bu soruna, uygulaması daha kolay ve bunlardan daha zarif olan Ken Wheeler'ın Slick Carousel'ini kullanan yeni bir çözüm var. Lütfen @joshmoto yanıtını tam kodla burada görüntüleyin> stackoverflow.com/a/54263516/345605
ganar

Yanıtlar:


20

Bu, bootstrap 3'ün atlıkarınca ile yapılabilir mi? Başka bir jQuery eklentisi için aramaya gitmem gerekmeyeceğini umuyorum

2013-12-08 itibariyle cevap hayır. Bootstrap 3'ün jenerik carousel eklentisini kullanarak aradığınız etki mümkün değil. Ancak, işte tam olarak istediğiniz şeyi yapan basit bir jQuery eklentisi http://sorgalla.com/jcarousel/


148

2019 güncellendi ...

Önyükleme 4

Atlı karınca 4.x'te değişmiştir ve çoklu slayt animasyon geçişleri bu şekilde geçersiz kılınabilir ...

.carousel-inner .carousel-item-right.active,
.carousel-inner .carousel-item-next {
  transform: translateX(33.33%);
}

.carousel-inner .carousel-item-left.active, 
.carousel-inner .carousel-item-prev {
  transform: translateX(-33.33%)
}

.carousel-inner .carousel-item-right,
.carousel-inner .carousel-item-left{ 
  transform: translateX(0);
}

Bootstrap 4 Alpha.6 Demo
Bootstrap 4.0.0 (4'ü göster, bir seferde 1'i ilerlet )
Bootstrap 4.1.0 (3'ü göster , bir seferde 1'i ilerlet ) Bootstrap 4.1.0 ( 4'ünü de aynı anda ilerlet
)
Bootstrap 4.3.1 duyarlı (birden fazla göster, ilerle 1) new
Bootstrap 4.3.1 atlı karınca kartlarlanew


Diğer bir seçenek ise , daha küçük ekranlarda yalnızca 1 slaytı gösteren ve ilerleten , ancak birden çok slaydın daha büyük ekranlar olduğunu gösteren duyarlı bir atlı karıncadır . Önceki örnekte olduğu gibi slaytları klonlamak yerine, bu, CSS'yi ayarlar ve jQuery'yi yalnızca ekstra slaytları sürekli döngüye izin verecek şekilde hareket ettirmek için kullanır (etrafına sarın):

Lütfen bu kodu kopyalayıp yapıştırmayın. İlk önce nasıl çalıştığını anlayın.

Bootstrap 4 Responsive (mobil cihazda 3, 1 slayt göster)

@media (min-width: 768px) {

    /* show 3 items */
    .carousel-inner .active,
    .carousel-inner .active + .carousel-item,
    .carousel-inner .active + .carousel-item + .carousel-item {
        display: block;
    }

    .carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left),
    .carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left) + .carousel-item,
    .carousel-inner .carousel-item.active:not(.carousel-item-right):not(.carousel-item-left) + .carousel-item + .carousel-item {
        transition: none;
    }

    .carousel-inner .carousel-item-next,
    .carousel-inner .carousel-item-prev {
      position: relative;
      transform: translate3d(0, 0, 0);
    }

    .carousel-inner .active.carousel-item + .carousel-item + .carousel-item + .carousel-item {
        position: absolute;
        top: 0;
        right: -33.3333%;
        z-index: -1;
        display: block;
        visibility: visible;
    }

    /* left or forward direction */
    .active.carousel-item-left + .carousel-item-next.carousel-item-left,
    .carousel-item-next.carousel-item-left + .carousel-item,
    .carousel-item-next.carousel-item-left + .carousel-item + .carousel-item,
    .carousel-item-next.carousel-item-left + .carousel-item + .carousel-item + .carousel-item {
        position: relative;
        transform: translate3d(-100%, 0, 0);
        visibility: visible;
    }

    /* farthest right hidden item must be abso position for animations */
    .carousel-inner .carousel-item-prev.carousel-item-right {
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        display: block;
        visibility: visible;
    }

    /* right or prev direction */
    .active.carousel-item-right + .carousel-item-prev.carousel-item-right,
    .carousel-item-prev.carousel-item-right + .carousel-item,
    .carousel-item-prev.carousel-item-right + .carousel-item + .carousel-item,
    .carousel-item-prev.carousel-item-right + .carousel-item + .carousel-item + .carousel-item {
        position: relative;
        transform: translate3d(100%, 0, 0);
        visibility: visible;
        display: block;
        visibility: visible;
    }

}

<div class="container-fluid">
    <div id="carouselExample" class="carousel slide" data-ride="carousel" data-interval="9000">
        <div class="carousel-inner row w-100 mx-auto" role="listbox">
            <div class="carousel-item col-md-4 active">
                <img class="img-fluid mx-auto d-block" src="//placehold.it/600x400/000/fff?text=1" alt="slide 1">
            </div>
            <div class="carousel-item col-md-4">
                <img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=2" alt="slide 2">
            </div>
            <div class="carousel-item col-md-4">
                <img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=3" alt="slide 3">
            </div>
            <div class="carousel-item col-md-4">
                <img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=4" alt="slide 4">
            </div>
            <div class="carousel-item col-md-4">
                <img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=5" alt="slide 5">
            </div>
            <div class="carousel-item col-md-4">
                <img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=6" alt="slide 6">
            </div>
            <div class="carousel-item col-md-4">
                <img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=7" alt="slide 7">
            </div>
            <div class="carousel-item col-md-4">
                <img class="img-fluid mx-auto d-block" src="//placehold.it/600x400?text=8" alt="slide 7">
            </div>
        </div>
        <a class="carousel-control-prev" href="#carouselExample" role="button" data-slide="prev">
            <i class="fa fa-chevron-left fa-lg text-muted"></i>
            <span class="sr-only">Previous</span>
        </a>
        <a class="carousel-control-next text-faded" href="#carouselExample" role="button" data-slide="next">
            <i class="fa fa-chevron-right fa-lg text-muted"></i>
            <span class="sr-only">Next</span>
        </a>
    </div>
</div>

Örnek - Bootstrap 4 Responsive (mobil cihazda 4 göster, 1 slayt)
Örnek - Bootstrap 4 Responsive (mobil cihazda 5, 1 slayt göster)


Önyükleme 3

Bootply'de bir 3.x örneği: http://bootply.com/89193

Etkin öğeye tüm bir resim satırı koymanız gerekir. Resimleri daha küçük ekran genişliklerinde yığmayan başka bir sürüm: http://bootply.com/92514

DÜZENLE Her seferinde bir slayt ilerletmek için alternatif yaklaşım :

Sonraki öğeleri klonlamak için jQuery kullanın.

$('.carousel .item').each(function(){
  var next = $(this).next();
  if (!next.length) {
    next = $(this).siblings(':first');
  }
  next.children(':first-child').clone().appendTo($(this));

  if (next.next().length>0) {
    next.next().children(':first-child').clone().appendTo($(this));
  }
  else {
    $(this).siblings(':first').children(':first-child').clone().appendTo($(this));
  }
});

Ve sonra CSS buna göre konumlandırılacak ...

3.3.1'den önce

.carousel-inner .active.left { left: -33%; }
.carousel-inner .next        { left:  33%; }

3.3.1'den sonra

.carousel-inner .item.left.active {
  transform: translateX(-33%);
}
.carousel-inner .item.right.active {
  transform: translateX(33%);
}

.carousel-inner .item.next {
  transform: translateX(33%)
}
.carousel-inner .item.prev {
  transform: translateX(-33%)
}

.carousel-inner .item.right,
.carousel-inner .item.left { 
  transform: translateX(0);
}

Bu, aynı anda 3 gösterir, ancak her seferinde yalnızca bir tane slayt :

Bootstrap 3.x Demosu


Lütfen bu kodu kopyalayıp yapıştırmayın. İlk önce nasıl çalıştığını anlayın. Bu cevap, öğrenmenize yardımcı olmak için burada .

Bu değiştirilmiş önyükleme 4 karuselinin ikiye katlanması, yalnızca yarı doğru şekilde çalışır (kaydırma döngüsü çalışmayı durdurur)
, css ve jquery'lerini karıştırmadan tek sayfada 2 önyükleme kaydırıcısı nasıl yapılır?
Bootstrap 4 Multi Carousel 3 yerine 4 resim gösterir


6
Teşekkürler. Bu çok daha iyi görünüyor ... ama biraz tuhaf geliyor. Sola kaydırma, bir seferde birden fazla bloğu kaydırdığından ve sıra kapalı göründüğünden işe yaramıyor gibi görünüyor. Doğru kaydırmak iyi çalışıyor (yanlış yönde olsa da). Bununla ilgili yaşadığım sorun, çok sayıda kopya oluşturuyor gibi görünmesi, ki bu o kadar da kötü değil ... ama o kadar da iyi değil ... yani sahip olduğum her öğe için (sizin durumunuzda 6), bu komut dosyası N kopya (burada N = çerçeve başına gösterilen blok).
rodrigo-silveira

5
@Zentaurus, geç olduğunu biliyorum ama dört element örneğine bakın . Bir SOpt sorusu için Skelly mantığını uyarladım .
Anthony Accioly

3
Neden> 3.3.0'da çalışmadığını buldum, bunun nedeni translate3D'nin eklenmesinden kaynaklanıyor, Danijel ve Michal Vrchota'nın yanıtlarını şu adresten kontrol edin: stackoverflow.com/questions/18613271/…
Jorge

2
@Zim bu demo 1 slaydı görünür tutar. 3 veya 4'ü (ekrana sığdığı kadar) göstermeyi ve ardından 1 öğe göstermeyi umuyorum.
Junior

1
@Junior Kesinlikle, son sürümde (4.3.1) benim için çalışmasını sağlayan tek şey, burada başka bir cevapta açıklanan marj ayarlamasıydı .
Armfoot

30

Yukarıdaki tüm çözümler hantal ve hatalıdır. Deneme bile. Diğer kitaplıkları kullanın. Bulduğum en iyisi - http://sachinchoolur.github.io/lightslider bootstrap ile harika çalışıyor, gereksiz html eklemiyor, yüksek düzeyde yapılandırılabilir, duyarlı, mobil uyumlu vb ...

$('.multi-item-carousel').lightSlider({
    item: 4,
    pager: false,
    autoWidth: false,
    slideMargin: 0
});

Çok teşekkürler, çok yararlı lib :)
GuiPab

Bu kaydırıcı kitaplıklarından bazıları, önyüklemenin, hatta 4'ün bile sunduğu şeyleri cüceler. Paylaşım için teşekkürler.
KhoPhi

Kaydırıcı slaytları kopyalar. Web sitesinde örnek kaydırıcılar soruce koduna bakınız.
Marinski

Bu, çok fazla açık sorunu olan ölü bir proje. (github'larını kontrol edin)
Osama Rashid

20

Bu çalışan bir twitter önyüklemesidir 3.

İşte javascript :

$('#myCarousel').carousel({
    interval: 10000
})

$('.carousel .item').each(function(){
    var next = $(this).next();

    if (!next.length) {
        next = $(this).siblings(':first');
    }

    next.children(':first-child').clone().appendTo($(this));

    if (next.next().length>0) {
        next.next().children(':first-child').clone().appendTo($(this));
    }
    else {
        $(this).siblings(':first').children(':first-child').clone().appendTo($(this));
    }
});

Ve css :

.carousel-inner .active.left  { left: -33%;             }
.carousel-inner .active.right { left: 33%;              }
.carousel-inner .next         { left: 33%               }
.carousel-inner .prev         { left: -33%              }
.carousel-control.left        { background-image: none; }
.carousel-control.right       { background-image: none; }
.carousel-inner .item         { background: white;      }

Bu Jsfiddle'da eylem halinde görebilirsiniz.

Bu cevabı eklememin nedeni, diğer cevaplar tamamen çalışmıyor. İçlerinde 2 hata buldum, bunlardan biri sol okun garip bir etki yaratması ve diğerinin metnin kalınlaşması ile ilgili olmasıydı. etki.


paylaştığınız için teşekkürler ... Ancak firefox'ta biraz titreme görüyorum.
Elon Zito

@paulalexandru görünür satırdaki resim sayısını nasıl artırabilirim?
jack wolier

Eğer css'nizde 4 öğe varsa,% 33 ile% 25 değiştirmelisiniz ve javascript'te de küçük bir değişiklik yapmalısınız. Bunu çözmeyi başaramazsanız, bir soru gönderin, orada eksiksiz bir yanıt göndereceğim.
paulalexandru

Bu harika bir çözüm! Teşekkürler!
raiderrobert

1
Çok teşekkür ederim. Bu bana çok yardımcı oldu. Barrio temasına dayalı bir drupal 8 sitesi için özel bir önyükleme teması oluşturuyorum. Bir atlı karıncayı özelleştirme konusunda çok fazla seçeneği yok. Sağladığınız JS ve CSS, sihir gibi çalıştı. Kodu, gereksinimlerime uyacak şekilde biraz değiştirmek zorunda kaldım ama sonuçta fevkalade çalıştı. Çok teşekkür ederim @paulalexandru
sylvery

6

Bu benim için çalıştı. Duyarlı atlıkarınca yapmak için çok basit jQuery ve CSS, aynı sayfadaki atlı karıncalardan bağımsız olarak çalışır. Oldukça özelleştirilebilir, ancak temelde bir dizi satır içi blok öğesi içeren beyaz boşluklu bir div öğesi vardır ve sonuncuyu geri gitmek için en başa veya ilerlemek için ilkini sona koymak. Teşekkür ederim insertAfter!

$('.carosel-control-right').click(function() {
  $(this).blur();
  $(this).parent().find('.carosel-item').first().insertAfter($(this).parent().find('.carosel-item').last());
});
$('.carosel-control-left').click(function() {
  $(this).blur();
  $(this).parent().find('.carosel-item').last().insertBefore($(this).parent().find('.carosel-item').first());
});
@media (max-width: 300px) {
  .carosel-item {
    width: 100%;
  }
}
@media (min-width: 300px) {
  .carosel-item {
    width: 50%;
  }
}
@media (min-width: 500px) {
  .carosel-item {
    width: 33.333%;
  }
}
@media (min-width: 768px) {
  .carosel-item {
    width: 25%;
  }
}
.carosel {
  position: relative;
  background-color: #000;
}
.carosel-inner {
  white-space: nowrap;
  overflow: hidden;
  font-size: 0;
}
.carosel-item {
  display: inline-block;
}
.carosel-control {
  position: absolute;
  top: 50%;
  padding: 15px;
  box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.5);
  transform: translateY(-50%);
  border-radius: 50%;
  color: rgba(0, 0, 0, 0.5);
  font-size: 30px;
  display: inline-block;
}
.carosel-control-left {
  left: 15px;
}
.carosel-control-right {
  right: 15px;
}
.carosel-control:active,
.carosel-control:hover {
  text-decoration: none;
  color: rgba(0, 0, 0, 0.8);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="carosel" id="carosel1">
  <a class="carosel-control carosel-control-left glyphicon glyphicon-chevron-left" href="#"></a>
  <div class="carosel-inner">
    <img class="carosel-item" src="http://placehold.it/500/bbbbbb/fff&amp;text=1" />
    <img class="carosel-item" src="http://placehold.it/500/CCCCCC&amp;text=2" />
    <img class="carosel-item" src="http://placehold.it/500/eeeeee&amp;text=3" />
    <img class="carosel-item" src="http://placehold.it/500/f4f4f4&amp;text=4" />
    <img class="carosel-item" src="http://placehold.it/500/fcfcfc/333&amp;text=5" />
    <img class="carosel-item" src="http://placehold.it/500/f477f4/fff&amp;text=6" />
  </div>
  <a class="carosel-control carosel-control-right glyphicon glyphicon-chevron-right" href="#"></a>
</div>
<div class="carosel" id="carosel2">
  <a class="carosel-control carosel-control-left glyphicon glyphicon-chevron-left" href="#"></a>
  <div class="carosel-inner">
    <img class="carosel-item" src="http://placehold.it/500/bbbbbb/fff&amp;text=1" />
    <img class="carosel-item" src="http://placehold.it/500/CCCCCC&amp;text=2" />
    <img class="carosel-item" src="http://placehold.it/500/eeeeee&amp;text=3" />
    <img class="carosel-item" src="http://placehold.it/500/f4f4f4&amp;text=4" />
    <img class="carosel-item" src="http://placehold.it/500/fcfcfc/333&amp;text=5" />
    <img class="carosel-item" src="http://placehold.it/500/f477f4/fff&amp;text=6" />
  </div>
  <a class="carosel-control carosel-control-right glyphicon glyphicon-chevron-right" href="#"></a>
</div>


Teşekkürler minik dev, cevabınızda bana 'atlıkarınca göstergeleri' konusunda yardım eder misiniz? ve otomatik slayt özelliği etkinleştirme / devre dışı bırakma.
MahiMan

6

Güncelleme 2019-03-06 - Bootstrap v4.3.1

Görünüşe göre yeni Bootstrap sürümü margin-right: -100%her bir öğeye bir ekliyor , bu nedenle burada en çok oy verilen yanıtta verilen duyarlı çözümde bu özellik sıfırlanmalıdır, örneğin:

.carousel-inner .carousel-item {
    margin-right: inherit;
}

LESS sürümünde v4.3.1 ile çalışan bir codepen .


Tanrı seni korusun ahaha
Alberto Bellini

1
Yukarıdaki en iyi seçilmiş cevapla mücadele eden herkes için, bu cevap, özellikle codepen bağlantısı bootstrap v4.4.0 kullanılarak harika çalışıyor. Biraz ince ayar yaparak, 4 slayt görünür veya ihtiyacınız olan her şeyle kolayca çalışmasını sağlayabilirsiniz. Gönderdiğiniz için teşekkürler.
crdunst

3

En popüler cevap doğrudur ama bence kod gereksiz bir şekilde karmaşıktır. Aynı css ile, bu jquery kodunun anlaşılması daha kolay olduğuna inanıyorum:

$('#myCarousel').carousel({
  interval: 10000
})

$('.carousel .item').each(function() {
  var item = $(this);
  item.siblings().each(function(index) {
    if (index < 4) {
      $(this).children(':first-child').clone().appendTo(item);
    }
  });
});

Bu benim için işe yarıyor, ancak farklı öğelerin yatay değil dikey olarak düzenlendiğini deneyimlememe rağmen animasyon hala yatay olarak çalışıyor
Don Giulio

2

bunu dene ..... benimkinde çalışıyor .... kod:

<div class="container">
    <br>
    <div id="myCarousel" class="carousel slide" data-ride="carousel">
        <!-- Indicators -->
        <ol class="carousel-indicators">
            <li data-target="#myCarousel" data-slide-to="0" class="active"></li>
            <li data-target="#myCarousel" data-slide-to="1"></li>
            <li data-target="#myCarousel" data-slide-to="2"></li>
            <li data-target="#myCarousel" data-slide-to="3"></li>
        </ol>

        <!-- Wrapper for slides -->
        <div class="carousel-inner" role="listbox">
            <div class="item active">
                <div class="span4" style="padding-left: 18px;">
                    <img src="http://placehold.it/290x180" class="img-thumbnail">
                    <img src="http://placehold.it/290x180" class="img-thumbnail">
                    <img src="http://placehold.it/290x180" class="img-thumbnail">
                </div>
            </div>
            <div class="item">
                 <div class="span4" style="padding-left: 18px;">
                    <img src="http://placehold.it/290x180" class="img-thumbnail">
                    <img src="http://placehold.it/290x180" class="img-thumbnail">
                    <img src="http://placehold.it/290x180" class="img-thumbnail">
                </div>
            </div>
        </div>
        <a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
            <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
            <span class="sr-only">Next</span>
        </a>
    </div>
</div>

2

    $('#carousel-example-generic').on('slid.bs.carousel', function () {
        $(".item.active:nth-child(" + ($(".carousel-inner .item").length -1) + ") + .item").insertBefore($(".item:first-child"));
        $(".item.active:last-child").insertBefore($(".item:first-child"));
    });    
        .item.active,
        .item.active + .item,
        .item.active + .item  + .item {
           width: 33.3%;
           display: block;
           float:left;
        }          
   <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" crossorigin="anonymous">

<div id="carousel-example-generic" class="carousel slide" data-ride="carousel" style="max-width:800px;">
  <!-- Indicators -->
  <ol class="carousel-indicators">
    <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
    <li data-target="#carousel-example-generic" data-slide-to="1"></li>
    <li data-target="#carousel-example-generic" data-slide-to="2"></li>
  </ol>

  <!-- Wrapper for slides -->
  <div class="carousel-inner" role="listbox">
    <div class="item active">
        <img data-src="holder.js/300x200?text=1">
    </div>
    <div class="item">
        <img data-src="holder.js/300x200?text=2">
    </div>
    <div class="item">
        <img data-src="holder.js/300x200?text=3">
    </div>
    <div class="item">
        <img data-src="holder.js/300x200?text=4">
    </div>
    <div class="item">
        <img data-src="holder.js/300x200?text=5">
    </div>
    <div class="item">
        <img data-src="holder.js/300x200?text=6">
    </div>
    <div class="item">
        <img data-src="holder.js/300x200?text=7">
    </div>    
  </div>

  <!-- Controls -->
  <a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
    <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
    <span class="sr-only">Previous</span>
  </a>
  <a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
    <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
    <span class="sr-only">Next</span>
  </a>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/holder/2.9.1/holder.min.js"></script>
    


0

Aynı sorunu yaşadım ve burada açıklanan çözümler iyi çalıştı. Ancak pencere boyutu (ve düzen) değişikliklerini desteklemek istedim. Sonuç, tüm hesaplamaları çözen küçük bir kitaplıktır. Buradan bir göz atın: https://github.com/SocialbitGmbH/BootstrapCarouselPageMerger

Betiğin çalışmasını sağlamak için <div>, sınıfla birlikte yeni bir sarmalayıcıyı .item-content doğrudan .item <div>. Misal:

<div class="carousel slide multiple" id="very-cool-carousel" data-ride="carousel">
    <div class="carousel-inner" role="listbox">
        <div class="item active">
            <div class="item-content">
                First page
            </div>
        </div>
        <div class="item active">
            <div class="item-content">
                Second page
            </div>
        </div>
    </div>
</div>

Bu kütüphanenin kullanımı:

socialbitBootstrapCarouselPageMerger.run('div.carousel');

Ayarları değiştirmek için:

socialbitBootstrapCarouselPageMerger.settings.spaceCalculationFactor = 0.82;

Misal:

Gördüğünüz gibi, pencereyi yeniden boyutlandırdığınızda atlıkarınca daha fazla kontrol gösterecek şekilde güncellenir. watchWindowSizeTimeoutPencere boyutu değişikliklerine tepki verme zaman aşımını kontrol etmek için ayarı kontrol edin.


0
Try this code


 <div id="recommended-item-carousel" class="carousel slide" data-ride="carousel">
    <div class="carousel-inner">
        <div class="item active">

            <div class="col-sm-3">
                <div class="product-image-wrapper">
                    <div class="single-products">
                        <div class="productinfo text-center">
                            <img src="img/home/recommend1.jpg" alt="" />
                            <h2>$56</h2>
                            <p>
                                Easy Polo Black Edition
                            </p>
                            <a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
                        </div>

                    </div>
                </div>
            </div>
            <div class="col-sm-3">
                <div class="product-image-wrapper">
                    <div class="single-products">
                        <div class="productinfo text-center">
                            <img src="img/home/recommend2.jpg" alt="" />
                            <h2>$56</h2>
                            <p>
                                Easy Polo Black Edition
                            </p>
                            <a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
                        </div>

                    </div>
                </div>
            </div>
            <div class="col-sm-3">
                <div class="product-image-wrapper">
                    <div class="single-products">
                        <div class="productinfo text-center">
                            <img src="img/home/recommend3.jpg" alt="" />
                            <h2>$56</h2>
                            <p>
                                Easy Polo Black Edition
                            </p>
                            <a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
                        </div>

                    </div>
                </div>
            </div>
        </div>
        <div class="item">
            <div class="col-sm-3">
                <div class="product-image-wrapper">
                    <div class="single-products">
                        <div class="productinfo text-center">
                            <img src="img/home/recommend1.jpg" alt="" />
                            <h2>$56</h2>
                            <p>
                                Easy Polo Black Edition
                            </p>
                            <a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
                        </div>

                    </div>
                </div>
            </div>
            <div class="col-sm-3">
                <div class="product-image-wrapper">
                    <div class="single-products">
                        <div class="productinfo text-center">
                            <img src="img/home/recommend2.jpg" alt="" />
                            <h2>$56</h2>
                            <p>
                                Easy Polo Black Edition
                            </p>
                            <a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
                        </div>

                    </div>
                </div>
            </div>
            <div class="col-sm-3">
                <div class="product-image-wrapper">
                    <div class="single-products">
                        <div class="productinfo text-center">
                            <img src="img/home/recommend3.jpg" alt="" />
                            <h2>$56</h2>
                            <p>
                                Easy Polo Black Edition
                            </p>
                            <a href="#" class="btn btn-default add-to-cart"><i class="fa fa-shopping-cart"></i>Add to cart</a>
                        </div>

                    </div>
                </div>
            </div>
        </div>
    </div>
    <a class="left recommended-item-control" href="#recommended-item-carousel" data-slide="prev"> <i class="fa fa-angle-left"></i> </a>
    <a class="right recommended-item-control" href="#recommended-item-carousel" data-slide="next"> <i class="fa fa-angle-right"></i> </a>
</div>


-1

"Karusel göstergeleri" değerine sahip sınıf olarak niteliğe sahip ve data-slide-to ile 0 ila 6 veya 0 ila 9 gibi sıralı değerlere sahip birden çok li in ol etiketi ekleyebilirsiniz.

sadece "item" değerine sahip sınıf olarak özniteliği olan div'i kopyalayıp yapıştırmanız gerekir.

Bu benim için çalışıyor.

<div data-ride="carousel" class="carousel slide" id="myCarousel">
    <!-- Indicators -->
    <ol class="carousel-indicators">
        <li class="" data-slide-to="0" data-target="#myCarousel"></li>
        <li data-slide-to="1" data-target="#myCarousel" class=""></li>
        <li data-slide-to="2" data-target="#myCarousel" class="active"></li>
        <li data-slide-to="3" data-target="#myCarousel" class=""></li>
        <li data-slide-to="4" data-target="#myCarousel" class=""></li>
        <li data-slide-to="5" data-target="#myCarousel" class=""></li>
        <li data-slide-to="6" data-target="#myCarousel" class=""></li>
    </ol>
    <div role="listbox" class="carousel-inner">
        <div class="item active">
            <img alt="First slide" src="images/carousel/11.jpg"
                class="first-slide">
        </div>
        <div class="item">
            <img alt="Second slide" src="images/carousel/22.jpg"
                class="second-slide">
        </div>
        <div class="item">
            <img alt="Third slide" src="images/carousel/33.jpg"
                class="third-slide">
        </div>
        <div class="item">
            <img alt="Third slide" src="images/carousel/44.jpeg"
                class="fourth-slide">
        </div>
        <div class="item">
            <img alt="Third slide" src="images/carousel/55.jpg"
                class="third-slide">
        </div>
        <div class="item">
            <img alt="Third slide" src="images/carousel/66.jpg"
                class="third-slide">
        </div>
        <div class="item">
            <img alt="Third slide" src="images/carousel/77.jpg"
                class="third-slide">
        </div>
    </div>
    <a data-slide="prev" role="button" href="#myCarousel"
        class="left carousel-control"> <span aria-hidden="true"
        class="glyphicon glyphicon-chevron-left"></span> <span
        class="sr-only">Previous</span>
    </a> <a data-slide="next" role="button" href="#myCarousel"
        class="right carousel-control"> <span aria-hidden="true"
        class="glyphicon glyphicon-chevron-right"></span> <span
        class="sr-only">Next</span>
    </a>
</div>

1
bize bir bootply gösterebilir misin? işe yaramıyor ve burada ne yapmak istediğinizi anlamıyorum ??
azerafati

-1

Yukarıdaki bağlantıya referans olarak her seferinde show 4 adında 1 yeni şey ekledim , önyükleme 3 için birer birer slayt (v3.3.7)

KODU : - https://www.codeply.com/go/eWUbGlspqU

CANLI SNIPPET

(function(){
  $('#carousel123').carousel({ interval: 2000 });
}());

(function(){
  $('.carousel-showmanymoveone .item').each(function(){
    var itemToClone = $(this);

    for (var i=1;i<4;i++) {
      itemToClone = itemToClone.next();

      // wrap around if at end of item collection
      if (!itemToClone.length) {
        itemToClone = $(this).siblings(':first');
      }

      // grab item, clone, add marker class, add to collection
      itemToClone.children(':first-child').clone()
        .addClass("cloneditem-"+(i))
        .appendTo($(this));
    }
  });
}());
body {
    margin-top: 50px;
}

.carousel-showmanymoveone .carousel-control {
  width: 4%;
  background-image: none;
}
.carousel-showmanymoveone .carousel-control.left {
  margin-left: 15px;
}
.carousel-showmanymoveone .carousel-control.right {
  margin-right: 15px;
}
.carousel-showmanymoveone .cloneditem-1,
.carousel-showmanymoveone .cloneditem-2,
.carousel-showmanymoveone .cloneditem-3 {
  display: none;
}
@media all and (min-width: 768px) {
  .carousel-showmanymoveone .carousel-inner > .active.left,
  .carousel-showmanymoveone .carousel-inner > .prev {
    left: -50%;
  }
  .carousel-showmanymoveone .carousel-inner > .active.right,
  .carousel-showmanymoveone .carousel-inner > .next {
    left: 50%;
  }
  .carousel-showmanymoveone .carousel-inner > .left,
  .carousel-showmanymoveone .carousel-inner > .prev.right,
  .carousel-showmanymoveone .carousel-inner > .active {
    left: 0;
  }
  .carousel-showmanymoveone .carousel-inner .cloneditem-1 {
    display: block;
  }
}
@media all and (min-width: 768px) and (transform-3d), all and (min-width: 768px) and (-webkit-transform-3d) {
  .carousel-showmanymoveone .carousel-inner > .item.active.right,
  .carousel-showmanymoveone .carousel-inner > .item.next {
    -webkit-transform: translate3d(50%, 0, 0);
            transform: translate3d(50%, 0, 0);
    left: 0;
  }
  .carousel-showmanymoveone .carousel-inner > .item.active.left,
  .carousel-showmanymoveone .carousel-inner > .item.prev {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    left: 0;
  }
  .carousel-showmanymoveone .carousel-inner > .item.left,
  .carousel-showmanymoveone .carousel-inner > .item.prev.right,
  .carousel-showmanymoveone .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    left: 0;
  }
}
@media all and (min-width: 992px) {
  .carousel-showmanymoveone .carousel-inner > .active.left,
  .carousel-showmanymoveone .carousel-inner > .prev {
    left: -25%;
  }
  .carousel-showmanymoveone .carousel-inner > .active.right,
  .carousel-showmanymoveone .carousel-inner > .next {
    left: 25%;
  }
  .carousel-showmanymoveone .carousel-inner > .left,
  .carousel-showmanymoveone .carousel-inner > .prev.right,
  .carousel-showmanymoveone .carousel-inner > .active {
    left: 0;
  }
  .carousel-showmanymoveone .carousel-inner .cloneditem-2,
  .carousel-showmanymoveone .carousel-inner .cloneditem-3 {
    display: block;
  }
}
@media all and (min-width: 992px) and (transform-3d), all and (min-width: 992px) and (-webkit-transform-3d) {
  .carousel-showmanymoveone .carousel-inner > .item.active.right,
  .carousel-showmanymoveone .carousel-inner > .item.next {
    -webkit-transform: translate3d(25%, 0, 0);
            transform: translate3d(25%, 0, 0);
    left: 0;
  }
  .carousel-showmanymoveone .carousel-inner > .item.active.left,
  .carousel-showmanymoveone .carousel-inner > .item.prev {
    -webkit-transform: translate3d(-25%, 0, 0);
            transform: translate3d(-25%, 0, 0);
    left: 0;
  }
  .carousel-showmanymoveone .carousel-inner > .item.left,
  .carousel-showmanymoveone .carousel-inner > .item.prev.right,
  .carousel-showmanymoveone .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    left: 0;
  }
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">

<div class="carousel carousel-showmanymoveone slide" id="carousel123">
	<div class="carousel-inner">
		<div class="item active">
			<div class="col-xs-12 col-sm-6 col-md-3"><a href="#"><img src="http://placehold.it/500/0054A6/fff/&amp;text=1" class="img-responsive"></a></div>
		</div>
		<div class="item">
			<div class="col-xs-12 col-sm-6 col-md-3"><a href="#"><img src="http://placehold.it/500/002d5a/fff/&amp;text=2" class="img-responsive"></a></div>
		</div>
		<div class="item">
			<div class="col-xs-12 col-sm-6 col-md-3"><a href="#"><img src="http://placehold.it/500/d6d6d6/333&amp;text=3" class="img-responsive"></a></div>
		</div>          
		<div class="item">
			<div class="col-xs-12 col-sm-6 col-md-3"><a href="#"><img src="http://placehold.it/500/002040/eeeeee&amp;text=4" class="img-responsive"></a></div>
		</div>
		<div class="item">
			<div class="col-xs-12 col-sm-6 col-md-3"><a href="#"><img src="http://placehold.it/500/0054A6/fff/&amp;text=5" class="img-responsive"></a></div>
		</div>
		<div class="item">
			<div class="col-xs-12 col-sm-6 col-md-3"><a href="#"><img src="http://placehold.it/500/002d5a/fff/&amp;text=6" class="img-responsive"></a></div>
		</div>
		<div class="item">
			<div class="col-xs-12 col-sm-6 col-md-3"><a href="#"><img src="http://placehold.it/500/eeeeee&amp;text=7" class="img-responsive"></a></div>
		</div>
		<div class="item">
			<div class="col-xs-12 col-sm-6 col-md-3"><a href="#"><img src="http://placehold.it/500/40a1ff/002040&amp;text=8" class="img-responsive"></a></div>
		</div>
	</div>
	<a class="left carousel-control" href="#carousel123" data-slide="prev"><i class="glyphicon glyphicon-chevron-left"></i></a>
	<a class="right carousel-control" href="#carousel123" data-slide="next"><i class="glyphicon glyphicon-chevron-right"></i></a>
</div>

<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.