Wie implementiert man Schiebekarussellbilder in js?
Dieser Artikel stellt hauptsächlich die js-Implementierung des von links nach rechts gleitenden Karusselleffekts vor. Er hat einen gewissen Referenzwert.
Der Karusselleffekt ist Lassen Sie die Bilder automatisch gleiten alle paar Sekunden, um den Effekt zu erzielen, dass die Bilder nacheinander abgespielt werden. Was die Effekte angeht, können Karussells entweder gleitend oder schrittweise sein. Das ist der Effekt, bei dem Bilder von links nach rechts verschoben werden. Ich spreche hier von dem Effekt, dass Bilder schrittweise angezeigt werden die Methode, um den ersten Effekt zu erzielen.
Prinzip
Bilder gleicher Größe werden in einer Spalte zusammengefasst, aber nur eines der Bilder wird angezeigt und der Rest wird ausgeblendet Anzeige durch Modifizieren des linken Wertebildes.
Klicken Sie, um den Effekt zu sehen
HTML-Teil
nav ist die Gesamtsumme Container, die erste ul-Liste #index ist eine Liste kleiner Punkte, auf der das Bild angezeigt wird, und ist eine Klasse, die den kleinen Punkten ein Hintergrundfarbattribut hinzufügt eine Bilderliste.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Carousel Figure</title> <link rel="stylesheet" href="style.css" rel="external nofollow" > </head> <body> <!--从左向右滑动--> <nav> <ul id="index"> <li class="on"></li> <li></li> <li></li> <li></li> <li></li> </ul> <ul id="img"> <li><img src="../images/img1.jpg" alt="img1"></li> <li><img src="../images/img2.jpg" alt="img2"></li> <li><img src="../images/img3.jpg" alt="img3"></li> <li><img src="../images/img4.jpg" alt="img4"></li> <li><img src="../images/img5.jpg" alt="img5"></li> </ul> </nav> <script src="script.js"></script> </body> </html>
CSS-Teil
Die Bildgrößen betragen alle 720*405 auf folgende Punkte:
ul#img list ist absolut positioniert relativ zur Navigation. Die Länge von #img muss auf die Gesamtbreite aller Bilder eingestellt werden, damit die Bilder angezeigt werden können nebeneinander;
Die Breite der gesamten Containernavigation muss auf die Breite des Bildes 720px eingestellt werden, d. h. es kann nur ein Bild angezeigt werden, und der Teil außerhalb der Breite wird ausgeblendet, d. h. Überlauf: versteckt;
Die Liste der kleinen Punkte sollte über der Bildliste angezeigt werden, also setzen Sie den Z-Index von #img: -1
Die Liste der kleinen Punkte besteht aus a Reihe von Li, indem Sie den Rahmenstil ändern, sodass Sie nur die Hintergrundfarbe ändern müssen, um den Effekt des Verschiebens der kleinen Punkte zu erzielen.
*{ margin:0; padding:0; } nav{ width: 720px; height: 405px; margin:20px auto; overflow: hidden; position: relative; } #index{ position: absolute; left:320px; bottom: 20px; } #index li{ width:8px; height: 8px; border: solid 1px gray; border-radius: 100%; background-color: #eee; display: inline-block; } #img{ width: 3600px;/*不给宽高无法移动*/ height: 405px; position: absolute;/*不定义absolute,js无法设置left和top*/ z-index: -1; } #img li{ width: 720px; height: 405px; float: left; } #index .on{ background-color: black; }
JS-Teil
Bildbewegungsfunktion moveElement()
Die moveElement-Funktion muss die aktuelle Position und die Zielposition des Bildes ermitteln und die Lücke zwischen ihnen für die Bewegung berechnen. Sie können offsetLeft und offsetTop verwenden, um die aktuelle Position des Bildes zu ermitteln . Der Effekt des „Überstreichens“ des Bildes beim Verschieben besteht darin, dass die Entfernung für die Bewegung in 10 Teile geteilt wird, d . Der Code lautet wie folgt:
function moveElement(ele,x_final,y_final,interval){//ele为元素对象 var x_pos=ele.offsetLeft; var y_pos=ele.offsetTop; var dist=0; if(ele.movement){//防止悬停 clearTimeout(ele.movement); } if(x_pos==x_final&&y_pos==y_final){//先判断是否需要移动 return; } dist=Math.ceil(Math.abs(x_final-x_pos)/10);//分10次移动完成 x_pos = x_pos<x_final ? x_pos+dist : x_pos-dist; dist=Math.ceil(Math.abs(y_final-y_pos)/10);//分10次移动完成 y_pos = y_pos<y_final ? y_pos+dist : y_pos-dist; ele.style.left=x_pos+'px'; ele.style.top=y_pos+'px'; ele.movement=setTimeout(function(){//分10次移动,自调用10次 moveElement(ele,x_final,y_final,interval); },interval) }
Kleine Punktbewegungsfunktion moveIndex()
Das Wesentliche beim Verschieben des Punktes besteht darin, die eingestellte Hintergrundfarbe zu verschieben. Das Prinzip der Klasse besteht darin, zunächst zu bestimmen, welches Li eine Hintergrundfarbe hat, diese zu entfernen, falls vorhanden, sodass alle Li keinen Hintergrund haben, und dann hinzuzufügen ein Hintergrund zum aktuellen li.
function moveIndex(list,num){//移动小圆点 for(var i=0;i<list.length;i++){ if(list[i].className=='on'){//清除li的背景样式 list[i].className=''; } } list[num].className='on'; }
Automatisches Bilderkarussell
Schreiben Sie den folgenden Code direkt in die Fenster .onload.
Hier müssen Sie einen variablen Index definieren, was bedeutet, dass Sie zum Indexbild wechseln (0 ~ n-1, n ist die Anzahl der li).
var img=document.getElementById('img'); var list=document.getElementById('index').getElementsByTagName('li'); var index=0;//这里定义index是变量,不是属性 var nextMove=function(){//一直向右移动,最后一个之后返回 index+=1; if(index>=list.length){ index=0; } moveIndex(list,index); moveElement(img,-720*index,0,20); };
Die Funktion setInterval() ist erforderlich, um Bilder automatisch zu drehen, sodass das Programm alle paar Sekunden automatisch die Funktion nextMove() aufrufen kann:
var play=function(){ timer=setInterval(function(){ nextMove(); },2500); };
Die Maus deckt den kleinen Punkteffekt ab
Um zu erkennen, welchen kleinen Punkt die Maus verdeckt, Einfach anzeigen Um den Effekt des entsprechenden Bildes zu erzielen, müssen Sie wissen, welcher kleine Punkt von der Maus abgedeckt wird. Hier wird jedem Li ein benutzerdefinierter Attributindex hinzugefügt, sodass der Wert dieses Attributs die Seriennummer des entsprechenden kleinen ist Punkt i (0 ~ n-1, n ist die Anzahl von li), sodass Sie jedes Mal, wenn die Maus ihn bedeckt, nur den Wert des Indexattributs abrufen müssen, um zu wissen, welchen kleinen Punkt die Maus bedeckt. Beachten Sie, dass das Indexattribut nichts mit dem Variablenindex zu tun hat, sondern nur denselben Namen hat.
for(var i=0;i<list.length;i++){//鼠标覆盖上哪个小圆圈,图片就移动到哪个小圆圈,并停止 list[i].index=i;//这里是设置index属性,和index变量没有任何联系 list[i].onmouseover= function () { var clickIndex=parseInt(this.index); moveElement(img,-720*clickIndex,0,20); index=clickIndex; moveIndex(list,index); clearInterval(timer); }; list[i].onmouseout= function () {//移开后继续轮播 play(); }; }
Zusammenfassung
Es ist vom Bewegungsverhalten kleiner Punkte getrennt, so dass es einfacher ist implementieren. Bei diesem Karussellbild gibt es tatsächlich einige Probleme. Die Gleitstrecke ist tatsächlich lang. Hier basiert die endgültige Berechnung auf -720. Der linke Wert und der Index dienen dazu, die Bewegung des Bildes und die Bewegung der kleinen Punkte miteinander zu verknüpfen. Ändern Sie die Gleitmethode auf den aktuellen OffsetLeft+ (-720). Geben Sie einen Wert ein und fügen Sie dann einen Wert zur HTML-Datei hinzu Das erste Bild ist gleich, die Änderungen sind nicht zu unterscheiden und eine nahtlose Verbindung ist möglich.
<li><img src="../images/img1.jpg" alt="img1"></li> <li><img src="../images/img2.jpg" alt="img2"></li> <li><img src="../images/img3.jpg" alt="img3"></li> <li><img src="../images/img4.jpg" alt="img4"></li> <li><img src="../images/img5.jpg" alt="img5"></li> <li><img src="../images/img1.jpg" alt="img1"></li>
Das obige ist der detaillierte Inhalt vonWie implementiert man Schiebekarussellbilder in js?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen











Wie implementiert man die doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen? Mit dem Aufkommen der sozialen Medien ist WeChat zu einem unverzichtbaren Kommunikationsmittel im täglichen Leben der Menschen geworden. Viele Menschen können jedoch auf ein Problem stoßen: Sie können sich gleichzeitig auf demselben Mobiltelefon bei mehreren WeChat-Konten anmelden. Für Huawei-Mobiltelefonbenutzer ist es nicht schwierig, eine doppelte WeChat-Anmeldung zu erreichen. In diesem Artikel wird erläutert, wie eine doppelte WeChat-Anmeldung auf Huawei-Mobiltelefonen erreicht wird. Erstens bietet das EMUI-System, das mit Huawei-Mobiltelefonen geliefert wird, eine sehr praktische Funktion – das doppelte Öffnen von Anwendungen. Durch die doppelte Öffnungsfunktion der Anwendung können Benutzer gleichzeitig

Die Programmiersprache PHP ist ein leistungsstarkes Werkzeug für die Webentwicklung, das eine Vielzahl unterschiedlicher Programmierlogiken und Algorithmen unterstützen kann. Unter diesen ist die Implementierung der Fibonacci-Folge ein häufiges und klassisches Programmierproblem. In diesem Artikel stellen wir vor, wie Sie die Fibonacci-Folge mit der Programmiersprache PHP implementieren, und fügen spezifische Codebeispiele bei. Die Fibonacci-Folge ist eine mathematische Folge, die wie folgt definiert ist: Das erste und das zweite Element der Folge sind 1, und ab dem dritten Element ist der Wert jedes Elements gleich der Summe der beiden vorherigen Elemente. Die ersten paar Elemente der Sequenz

So implementieren Sie die WeChat-Klonfunktion auf Huawei-Mobiltelefonen Mit der Popularität sozialer Software und der zunehmenden Bedeutung von Datenschutz und Sicherheit rückt die WeChat-Klonfunktion allmählich in den Mittelpunkt der Aufmerksamkeit der Menschen. Die WeChat-Klonfunktion kann Benutzern helfen, sich gleichzeitig bei mehreren WeChat-Konten auf demselben Mobiltelefon anzumelden, was die Verwaltung und Nutzung erleichtert. Es ist nicht schwierig, die WeChat-Klonfunktion auf Huawei-Mobiltelefonen zu implementieren. Sie müssen lediglich die folgenden Schritte ausführen. Schritt 1: Stellen Sie sicher, dass die Version Ihres Mobiltelefonsystems und die WeChat-Version den Anforderungen entsprechen. Stellen Sie zunächst sicher, dass die Version Ihres Huawei-Mobiltelefonsystems sowie die WeChat-App auf die neueste Version aktualisiert wurden.

Im heutigen Bereich der Softwareentwicklung wird Golang (Go-Sprache) als effiziente, prägnante und hochgradig parallele Programmiersprache von Entwicklern zunehmend bevorzugt. Seine umfangreiche Standardbibliothek und die effizienten Parallelitätsfunktionen machen es zu einer hochkarätigen Wahl im Bereich der Spieleentwicklung. In diesem Artikel wird untersucht, wie man Golang für die Spieleentwicklung verwendet, und seine leistungsstarken Möglichkeiten anhand spezifischer Codebeispiele demonstriert. 1. Golangs Vorteile bei der Spieleentwicklung: Als statisch typisierte Sprache wird Golang beim Aufbau großer Spielsysteme verwendet.

Implementierungsleitfaden für PHP-Spielanforderungen Mit der Popularität und Entwicklung des Internets erfreut sich der Markt für Webspiele immer größerer Beliebtheit. Viele Entwickler hoffen, die PHP-Sprache zur Entwicklung ihrer eigenen Webspiele nutzen zu können, und die Umsetzung der Spielanforderungen ist ein wichtiger Schritt. In diesem Artikel wird erläutert, wie Sie mithilfe der PHP-Sprache allgemeine Spielanforderungen implementieren und spezifische Codebeispiele bereitstellen. 1. Spielfiguren erstellen In Webspielen sind Spielfiguren ein sehr wichtiges Element. Wir müssen die Attribute des Spielcharakters wie Name, Level, Erfahrungswert usw. definieren und Methoden für deren Bedienung bereitstellen

Die Implementierung exakter Divisionsoperationen in Golang ist ein häufiger Bedarf, insbesondere in Szenarien mit Finanzberechnungen oder anderen Szenarien, die hochpräzise Berechnungen erfordern. Der in Golang integrierte Divisionsoperator „/“ wird für Gleitkommazahlen berechnet, und manchmal besteht das Problem eines Präzisionsverlusts. Um dieses Problem zu lösen, können wir Bibliotheken von Drittanbietern oder benutzerdefinierte Funktionen verwenden, um exakte Divisionsoperationen zu implementieren. Ein gängiger Ansatz ist die Verwendung des Rat-Typs aus dem Paket math/big, der eine Darstellung von Brüchen bereitstellt und zur Implementierung exakter Divisionsoperationen verwendet werden kann.

Als weltbekannte Sportmarke haben die Schuhe von Nike viel Aufmerksamkeit erregt. Allerdings gibt es auch eine Vielzahl gefälschter Produkte auf dem Markt, darunter auch gefälschte Nike-Schuhkartons. Die Unterscheidung echter Schuhkartons von gefälschten ist für den Schutz der Rechte und Interessen der Verbraucher von entscheidender Bedeutung. In diesem Artikel erfahren Sie einige einfache und effektive Methoden, mit denen Sie zwischen echten und gefälschten Schuhkartons unterscheiden können. 1: Titel der Außenverpackung Wenn Sie sich die Außenverpackung von Nike-Schuhkartons ansehen, können Sie viele subtile Unterschiede feststellen. Originale Nike-Schuhkartons bestehen in der Regel aus hochwertigen Papiermaterialien, die sich glatt anfühlen und keinen offensichtlichen stechenden Geruch verströmen. Die Schriftarten und Logos auf authentischen Schuhkartons sind in der Regel klar und detailliert und es gibt keine Unschärfen oder Farbinkonsistenzen. 2: Der Logo-Heißprägetitel ist normalerweise auf dem Original-Schuhkarton abgebildet

Es tut mir wirklich leid, dass ich keine Echtzeit-Programmieranleitung geben kann, aber ich kann Ihnen ein Codebeispiel zur Verfügung stellen, um Ihnen ein besseres Verständnis dafür zu vermitteln, wie Sie PHP zur Implementierung von SaaS verwenden. Es folgt ein Artikel mit 1.500 Wörtern und dem Titel „Verwendung von PHP zur Implementierung von SaaS: Eine umfassende Analyse“. Im heutigen Informationszeitalter ist SaaS (Software as a Service) zur gängigen Art der Softwarenutzung für Unternehmen und Privatpersonen geworden. Es bietet eine flexiblere und bequemere Möglichkeit, auf Software zuzugreifen. Mit SaaS müssen Benutzer nicht vor Ort sein
