Zeigen Sie einen Teil der nächsten und vorherigen Artikel mit Owl Carousel 2.0

Lesezeit: 5 Minuten

Benutzer-Avatar
Big-Beef

Ich benutze Eulenkarussell 2.0. Ich möchte einen Artikel zeigen, eine Hälfte (oder weniger) des vorherigen Artikels (linke Seite) und eine Hälfte (oder weniger) des nächsten Artikels (rechte Seite). Einfach einen Teil davon auf der rechten und auf der linken Seite herausstellen:

Geben Sie hier die Bildbeschreibung ein

Ich habe versucht, nur CSS zu verwenden (padding und margin negativ mit owl-stage-outer), aber offensichtlich überschreibt Javascript sie.

Hier mein bisheriger Code:

$('.owl-carousel').owlCarousel({
  loop: true,
  margin: 10,
  nav: true,
  responsive: {
    0: {
      items: 1
    },
    600: {
      items: 3
    }
  }
})
.owl-carousel .item h4 {
  color: #FFF;
  font-weight: 400;
  margin-top: 0em;
}

.owl-carousel .item {
  height: 10em;
  background: #4DC7A0;
  padding: 1em;
}

.wrapper {
  width: 40em;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.2.1/assets/owl.carousel.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.2.1/owl.carousel.min.js"></script>

<div class="wrapper">
  <div class="owl-carousel">
    <div class="item">
      <h4>1</h4>
    </div>
    <div class="item">
      <h4>2</h4>
    </div>
    <div class="item">
      <h4>3</h4>
    </div>
    <div class="item">
      <h4>4</h4>
    </div>
    <div class="item">
      <h4>5</h4>
    </div>
    <div class="item">
      <h4>6</h4>
    </div>
    <div class="item">
      <h4>7</h4>
    </div>
    <div class="item">
      <h4>8</h4>
    </div>
    <div class="item">
      <h4>9</h4>
    </div>
    <div class="item">
      <h4>10</h4>
    </div>
    <div class="item">
      <h4>11</h4>
    </div>
    <div class="item">
      <h4>12</h4>
    </div>
  </div>

  • Können Sie einen Link zu Ihrem Code/Ihrer Website posten?

    – mdt0093

    14. August 2014 um 11:40 Uhr

  • Sicher! Ich habe einen Codepen gemacht: codepen.io/Big-beef/pen/FcECq Denken Sie daran, dass ich versuche, ein Element in der Mitte des Karussells und einen Teil des vorherigen Elements auf der linken Seite und einen Teil des nächsten Elements auf der rechten Seite anzuzeigen. Hier kurz was ich machen möchte: big-beef.com/test/test.jpg Danke Konstantin!

    – Big Beef

    15. August 2014 um 15:49 Uhr


  • Etwas ähnliches: coolcarousels.frebsite.nl/c/2

    – Big Beef

    15. August 2014 um 16:06 Uhr

  • Siehe meine Antwort! Für die verlinkte Demo müssen Sie klicken Run with JS mehrfach weil rawgit.com verwendet, die manchmal einige Ressourcen nicht sofort liefert.

    – mittrin

    17. August 2014 um 19:29 Uhr


Benutzer-Avatar
mittrin

Der einfachste Weg, dies zu tun, ist die Verwendung von stagePadding. Demo unten:

$(function() {
  $('.owl-carousel').owlCarousel({
    margin: 10,
    loop: true,
    items: 1,
    stagePadding: 100
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.2.1/assets/owl.carousel.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/OwlCarousel2/2.2.1/owl.carousel.min.js"></script>

<div class="owl-carousel">
  <div class="item"><img src="https://placehold.it/350x150&text=1" /></div>
  <div class="item"><img src="https://placehold.it/350x150&text=2" /></div>
  <div class="item"><img src="https://placehold.it/350x150&text=3" /></div>
  <div class="item"><img src="https://placehold.it/350x150&text=4" /></div>
  <div class="item"><img src="https://placehold.it/350x150&text=5" /></div>
  <div class="item"><img src="https://placehold.it/350x150&text=6" /></div>
  <div class="item"><img src="https://placehold.it/350x150&text=7" /></div>
  <div class="item"><img src="https://placehold.it/350x150&text=8" /></div>
</div>

  • Gibt es eine Möglichkeit zu verwenden stagePadding oder ähnliches für nur eine seite statt für beide? Ich möchte nur einen Teil des nächsten Elements rechts anzeigen, ohne das vorherige links anzuzeigen

    – Schritte

    4. Juni 2015 um 17:59 Uhr


  • Falls Sie nur eine Seite benötigen, fügen Sie hinzu margin-left zu .owl-stage in Ihrem Styling (gleiche Menge wie Bühnenpolsterung, aber negativ). Nur eine Seite wird gepolstert.

    – Rossanmol

    14. Juni 2017 um 21:52 Uhr

  • Kann stagePadding nur in der mobilen Ansicht angezeigt werden? @Coder

    – Athi

    16. Februar 2018 um 9:54 Uhr


  • @athi Sie sollten das innerhalb des Auflösungsobjekts tun können.

    – Rossanmol

    16. Februar 2018 um 12:23 Uhr

Auch wenn Sie einen Teil des nächsten Artikels nur von der rechten Seite haben möchten, verwenden Sie wie @witrin erwähnt:

$('.owl-carousel').owlCarousel({
    margin: 10,
    loop: true,
    items: 1,
    stagePadding: 30
});

und schreiben Sie auch in Ihrem Stil das CSS:

.owl-stage{
    left:-30
}

Haben Sie einen guten Code.

  • Genau das wollte ich! Vielen Dank!

    – MVEntwickler1

    1. Juni 2020 um 0:45 Uhr

Benutzer-Avatar
Leonardo Assist

Ich habe Halbwerte im benutzerdefinierten Code wie oben verwendet. Ich hoffe es hilft.

$("#owlCarousel").owlCarousel({
  itemsCustom: [
    [0, 1],
    /* Show half of next item */
    [450, 1.5],
    [600, 2.5],
    [700, 3],
    [800, 3],
    [1000, 4],
    [1200, 4],
    [1400, 4],
    [1600, 4]
  ],

  lazyLoad: true,
  navigation: false,
});

Mein Code funktioniert gut, der einfachste Weg

 <style>
    /***** you should change (75px) for your own *****/
    #pro-slider{width: calc(100% - 75px);}
    #pro-slider .owl-stage-outer{overflow:unset;}
    </style>

    <script>
    jQuery(document).ready(function(){
    $('#pro-slider').owlCarousel({
    //items: depend on u
            items:1,
        });
    }
    </script>

1176900cookie-checkZeigen Sie einen Teil der nächsten und vorherigen Artikel mit Owl Carousel 2.0

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy