Wirkung: <Text> <div Klasse="kleineBox"> <div Klasse="arrowLeft">←</div> <div class="smallPicBox"> //Verwenden Sie ein Div, um eine UL zu speichern, und legen Sie den anfänglichen Stil für jedes LI in der UL fest<ul> <li id="li1" style="position: absolute;top:calc(50% - 200px);left: 0px;z-index:1;background-color: aqua;transform: scale(0.5);transition: 0.3s;opacity: 0.5;background-image: url(./images/01.jpg);background-size: cover;"></li> <li id="li2" style="position: absolute;top:calc(50% - 200px);left: 150px; z-index:2;background-color: red;transform: scale(0.7); transition: 0.3s;opacity: 0.7;background-image: url(./images/02.jpg);background-size: cover;"></li> <li id="li3" style="position: absolute;top:calc(50% - 200px);left: 300px; z-index:3;background-color: blue;transform: scale(0.9); transition: 0.3s;opacity: 0.9;background-image: url(./images/03.jpg);background-size: cover;"></li> <li id="li4" style="position: absolute;top:calc(50% - 200px);left: 450px; z-index:4;background-color: green;transform: scale(1); transition: 0.3s;opacity: 1;background-image: url(./images/04.jpg);background-size: cover;"></li> <li id="li5" style="position: absolute;top:calc(50% - 200px);left: 600px; z-index:3;background-color: yellow;transform: scale(0.9); transition: 0.3s;opacity: 0.9;background-image: url(./images/05.jpg);background-size: cover;"></li> <li id="li6" style="position: absolute;top:calc(50% - 200px);left: 750px; z-index:2;background-color: gray;transform: scale(0.7); transition: 0.3s;opacity: 0.7;background-image: url(./images/06.jpg);background-size: cover;"></li> <li id="li7" style="position: absolute;top:calc(50% - 200px);left: 900px; z-index:1;background-color: deeppink;transform: scale(0.5); transition: 0.3s;opacity: 0.5;background-image: url(./images/07.jpg);background-size: cover;"></li> </ul> </div> <div Klasse="arrowRight">→</div> </div> </div> </body> CSS Code: <Stil> *{ Rand: 0; Polsterung: 0; Listenstil: keiner; } .albumBox{ Breite: 1200px; Höhe: 400px; Rand: 0 automatisch; Rand: 1px durchgezogen #000; } .smallBox{ Höhe: 400px; Zeilenhöhe: 400px; Position: relativ; } .smallPicBox{ Breite: 1100px; Höhe: 400px; schweben: links; Position: relativ; } .smallPicBox ul{ Breite: 100 %; Höhe: 400px; } .smallPicBox li{ Breite: 320px; Höhe: 400px; schweben: links; Rand: 1px durchgezogen #000; Box-Größe: Rahmenbox; } .smallBox .current::nach{ Inhalt: "\25b2"; Position: absolut; oben: -31px; links: 70px; Farbe: rot; } .arrowLeft{ Breite: 50px; Höhe: 400px; Position: absolut; links: 0; Rand: 1px durchgezogen #000; Box-Größe: Rahmenbox; Hintergrundfarbe: grau; Z-Index: 10; } .PfeilRechts{ Breite: 50px; Höhe: 400px; Position: absolut; rechts: 0; Rand: 1px durchgezogen #000; Box-Größe: Rahmenbox; Hintergrundfarbe: grau; Z-Index: 10; } </Stil> JS-Code: <Skript> var arrowLeft = document.querySelector(".arrowLeft") var Pfeil nach rechts = document.querySelector(".arrowRight") var ul = document.querySelector(".smallPicBox ul") var li = document.querySelectorAll(".smallPicBox li") var timerId = 0 arrowLeft.onclick=function(){ //Linkspfeil-Klickereignis li=document.getElementsByTagName('li') ul.appendChild(li[0]) //Schneide das 0. Kindelement von ul bis zum Ende ab, um ein nahtloses Karussell zu erhalten posi(li) //Ändere die Eigenschaften jedes li} arrowRight.onclick=function(){ //Klickereignis für Rechtspfeil li=document.getElementsByTagName('li') //li erneut abrufen ul.insertBefore(li[6],li[0]) //Schneide das letzte Kindelement von ul nach vorne, um ein nahtloses Karussell zu erhalten posi(li) //Ändere die Eigenschaften jedes li} function posi(li){ //Li-Attribut ändern function var n1=0 for(var x=0;x<li.length;x++){ //Position ändern li[x].style.left=n1+'px' n1 = n1 + 150 } for(var i=0;i<li.length/2;i++){ //Ändere die Ebene li[i].style.zIndex=i+1 li[li.Länge-1-i].style.zIndex=i+1 } li[3].style.zIndex='4' var n2=0,3 für (var j = 0; j <li.length/2; j++) { // Skalierung n2 = parseFloat (n2 + 0,2) li[j].style.transform='Skala('+n2+')' li[li.length-1-j].style.transform='Skala('+n2+')' } li[3].style.transform = "Skala(1)" var n3=0,3 for(var k=0;k<li.length/2;k++){ //Transparenz ändern n3=parseFloat(n3+0.2) li[k].style.opacity=n3 li[li.Länge-1-k].Stil.opacity=n3 } li[3].style.opacity='1' } //Maus rein und raus temerId=setInterval(function(){ Pfeil nach links.Klick() }, 1000); Pfeil nach links.beimMouseover=Funktion(){ Intervall löschen(Timer-ID) } Pfeil nach links.onmouseout=function(){ TimerId = Intervall festlegen(Funktion(){ Pfeil nach links.Klick() }, 1000); } Pfeil nach rechts.beimMouseover=function(){ Intervall löschen(Timer-ID) } Pfeil nach rechts.onmouseout=function(){ TimerId = Intervall festlegen(Funktion(){ Pfeil nach links.Klick() }, 1000); } </Skript> Hinweis: In diesem Beispiel wird js direkt in den Text geschrieben. Sie können auch eine separate js-Datei schreiben und diese in die HTML-Schnittstelle einfügen. Effektbild: Damit ist dieser Artikel über Beispielcode zur Implementierung gestapelter Karusselleffekte mit HTML+CSS+JS abgeschlossen. Weitere Informationen zur Implementierung von Karusselleffekten mit HTML+CSS+JS finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! |
>>: So schreiben Sie mithilfe von Filtern transparentes CSS für Bilder
In diesem Artikelbeispiel wird der spezifische Co...
CSS-Viewport-Einheiten gibt es schon seit einigen...
Inhaltsverzeichnis Der erste Schritt besteht dari...
Inhaltsverzeichnis 1 Redis-Konfigurationsdatei 2 ...
Detaillierte Analyse der SQL-Ausführungsschritte ...
In diesem Artikel wird hauptsächlich erläutert, w...
Inhaltsverzeichnis 1. Was ist eine Veranstaltung?...
Weitere Informationen zu Bedienelementen finden S...
Closure-Implementierung privater Variablen Privat...
1. Statistiken zu PV und IP Zählen Sie die PV (Pa...
Frage Nachdem das Unternehmen den Server migriert...
<br />In der HTML-Sprache können Sie der Tab...
1. Was ist eine Marge? Mit dem Rand wird die Abstä...
Aktuelle Nachfrage: Es gibt zwei Tabellen, Gruppe...
Einführung in strukturelle Pseudoklassenselektore...