prosím o pomoc.
mám na stránkách swiper cowerflow (slideshow fotek).
když jsem se prokousal nastavením, tak jsem zjistil, že pro změnu fotky(posunutí) pomocí mmousewheel neexistuje tzv smooth přechod na další fotku, ale má funkce swiper.slideNext() a swiper.slidePrew, které smooth efect podporují.
odchytávám tedy na elementu #album pohyb kolečka a swiper funkce volám podle toho, kam se kolečko pohne.
funguje to, akorát je problém, že když pohnu na #album kolečkem tak se sice přejde na další fotku, ale zároveň se i provede scroll celé stránky. a to bych právě potřeboval zakázat.
prostě když budu na #album, tak aby fungoval scroll jen v tom divu a stránka zůstala na místě,
nebo ještě líp, aby když se přejede na poslední fotku, povolil se scroll stránky dolu a když je na první fotce, povolil se scroll stránky nahoru;
HTML:
- Kód: Vybrat vše
// nějaký code
<div id="album" class="swiper-container">
<div class="swiper-wrapper">
<div class="swiper-slide">
<div class="kartaFotky">
<div class="popisFotky">fotka 1</div>
<img class="fotka" src="~/Content/_myOwnImages/album/fotka1.jpg" />
</div>
</div>
<div class="swiper-slide">
<div class="kartaFotky">
<div class="popisFotky">fotka 2</div>
<img class="fotka" src="~/Content/_myOwnImages/album/fotka2" />
</div>
</div>
<div class="swiper-slide">
<div class="kartaFotky">
<div class="popisFotky">fotka 3</div>
<img class="fotka" src="~/Content/_myOwnImages/album/fotka3.jpg" />
</div>
</div>
<div class="swiper-slide">
<div class="kartaFotky">
<div class="popisFotky">fotka 4</div>
<img class="fotka" src="~/Content/_myOwnImages/album/fotka4.jpg" />
</div>
</div>
<div class="swiper-slide">
<div class="kartaFotky">
<div class="popisFotky">fotka 5</div>
<img class="fotka" src="~/Content/_myOwnImages/album/fotka5.jpg" />
</div>
</div>
</div>
</div>
// další code
Jquery
- Kód: Vybrat vše
var album = document.getElementById("album");
album.addEventListener("mousewheel", posunFotku, false);
album.addEventListener("DOMMouseScroll", posunFotku, false);
function posunFotku(smer) {
var smer = window.event || smer;
var delta = Math.max(-1, Math.min(1, (smer.wheelDelta || -smer.detail)));
if (delta < 0) {
swiper.slideNext();
console.log("do prava");
}
else {
swiper.slidePrev();
console.log("do leva");
}
return false;
}
ještě upřesním, že fotky ve slidu jsou umístěny horizontálně, pohybují se z prava do leva.
nějakej nápad prosím ??