js-Simulation, um den Effekt der Bildvergrößerung auf der Jingdong-Detailseite zu erzielen

js-Simulation, um den Effekt der Bildvergrößerung auf der Jingdong-Detailseite zu erzielen

In diesem Artikel wird der spezifische Code von js zur Realisierung der Vergrößerung des Bildes auf der Jingdong-Detailseite zu Ihrer Information freigegeben. Der spezifische Inhalt ist wie folgt

Wirkung:

html:

<div Klasse="Vorschaubild">
 <img src="upload/s3.png" alt="">
 <div Klasse="Maske"></div>
 <div Klasse="groß">
  <img src="upload/big.jpg" alt="" class="bigImg">
 </div>
</div>

CSS:

.vorschau_img {
 Position: relativ;
 Höhe: 398px;
 Rand: 1px durchgezogen #ccc;
}
.Maske {
 Anzeige: keine;
 Position: absolut;
 Breite: 300px;
 Höhe: 300px;
 oben: 0;
 links: 0;
 Hintergrund: #FEFE4F;
 Deckkraft: .5;
 Rand: 1px durchgezogen #ccc;
 Cursor: bewegen;
}
.groß {
 Anzeige: keine;
 Position: absolut;
 Breite: 550px;
 Höhe: 550px;
 oben: 0;
 links: 410px;
 Z-Index: 999;
 Rand: 1px durchgezogen #ccc;
 Überlauf: versteckt;
}
.bigimg {
 Position: absolut;
 links: 0;
 oben: 0;
}

js (Hervorhebung):

window.addEventListener('laden',Funktion(){
    var preview_img = document.querySelector('.preview_img');
    var Maske = dieses.Dokument.AbfrageSelector('.Maske');
    var big = dieses.Dokument.QuerySelector('.big');
    var bigImg = dieses.document.querySelector('.bigImg');
    //Mit der Maus darüberfahren preview_img.addEventListener('mouseover',function(){
        Maske.Stil.Anzeige = "Block";
        großer.Stil.Anzeige = "Block";
    })
    //Maus raus preview_img.addEventListener('mouseout',function(){
        Maske.Stil.Anzeige = "keine";
        big.style.display = "keine";
    })
    //Wenn die Maus bewegt wird preview_img.addEventListener('mousemove',function(e){
        //Die Koordinaten der Maus in der Box var x = e.pageX - this.offsetLeft;
        var y = e.pageY - this.offsetTop;
        //Die Distanz, über die sich die Okklusionsebene bewegt, var maskX = x - mask.offsetWidth/2;
        var maskY = y-mask.offsetHeight/2;
        //Bewegungsdistanz für große Bilder //Maximale Bewegungsdistanz der Okklusionsebene var maskMaxX = preview_img.offsetWidth - mask.offsetWidth;
        var maskMaxY = preview_img.offsetHeight - mask.offsetHeight;
        //Wenn die X-Koordinate kleiner als 0 ist, lass sie auf 0 bleiben if (maskX <= 0) {
            MaskeX = 0;
        }sonst wenn (MaskeX >= MaskeMaxX) {
            MaskeX = MaskeMaxX;
        }
        //Wenn die Y-Koordinate kleiner als 0 ist, lass sie auf 0 bleiben if (maskY <= 0) {
            MaskeY = 0;
        }sonst wenn (MaskeY >= MaskeMaxY) {
            MaskeY = MaskeMaxY;
        }
        //Bewegung der Okklusionsebene mask.style.left = maskX + 'px';
        mask.style.top = maskY + 'px';
        
        //Die maximale Bewegungsdistanz des großen Bildes var bigMaxX = bigImg.offsetWidth - big.offsetWidth;
        var bigMaxY = bigImg.offsetHeight - big.offsetHeight;
        //Die Bewegungsdistanz des großen Bildes XY
        // Bewegungsdistanz des großen Bildes = Bewegungsdistanz der Okklusionsebene * Maximale Bewegungsdistanz des großen Bildes / Maximale Bewegungsdistanz der Okklusionsebene var bigX = maskX * bigMaxX / maskMaxX;
        var bigY = MaskeY * bigMaxY / MaskeMaxY;
        //Das große Bild und das kleine Bild (Mausbewegung) zeigen in entgegengesetzte Richtungen bigImg.style.left = -bigX + 'px';
        bigImg.style.top = -bigY + 'px';
    })
})

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Zwei einfache Möglichkeiten zum Vergrößern und Verkleinern von Bildern in JS
  • js lupe vergrößerungsbild effekt
  • js implementiert die Methode zum Klicken auf das Bild, um das Bild zu vergrößern
  • js realisiert den Effekt, wenn Sie auf das Bild klicken, um es in der Mitte des Bildschirms anzuzeigen und zu vergrößern
  • JS realisiert den Bildzoomeffekt, wenn die Maus zum Miniaturbild bewegt wird, um das große Bild anzuzeigen
  • js-Code für die Bildvergrößerung und den Schwebeeffekt, wenn die Maus nach oben gleitet
  • JavaScript-Code für den Bildlupeneffekt [der Code ist relativ einfach]
  • js, um einen Bildvergrößerungsanzeigeeffekt zu erzielen
  • Mobiles HTML5 verwendet photoswipe.js, um den Zoomeffekt von WeChat Moments-Bildern zu imitieren
  • JS-Webseiten-Bildbetrachter (kompatibel mit IE, FF) kann das Bild vergrößern, verkleinern und verschieben

<<:  So fragen Sie Daten aus mehreren unabhängigen Tabellen und Paging in MySQL ab

>>:  So bewerben Sie sich für Webdesign-Jobs

Artikel empfehlen

Netzwerkmanagement und Netzwerkisolationsimplementierung von Docker-Containern

1. Docker-Netzwerkverwaltung 1. Docker-Container-...

Detaillierte Erklärung der scp- und sftp-Befehle unter Linux

Inhaltsverzeichnis Vorwort 1. SCP-Nutzung 2. Verw...

So ermitteln Sie die Höhe des MySQL InnoDB B+-Baums

Vorwort Der Grund, warum die InnoDB-Engine von My...

Vue implementiert die Seiten-Caching-Funktion

In diesem Artikelbeispiel wird der spezifische Co...

Tiefgreifendes Verständnis von Worker-Threads in Node.js

Inhaltsverzeichnis Überblick Die Geschichte der C...

Beispieldemonstration der Vuex-Modularisierung und Namespaces

1. Zweck: Machen Sie den Code leichter wartbar un...

Standardzusammenfassung zur Analyse der Leistung einer SQL-Anweisung

In diesem Artikel wird die Verwendung von „Explai...

JavaScript zum Erzielen eines Klickbild-Flip-Effekts

Ich habe kürzlich an einem Projekt zur Gesichtser...

Detaillierte Erklärung des JSON-Dateischreibformats

Inhaltsverzeichnis Was ist JSON Warum diese Techn...

Installationsschritte von Docker-CE auf dem Raspberry Pi 4b Ubuntu19-Server

Das Raspberry Pi-Modell ist 4b, 1 G RAM. Das Syst...

So implementieren Sie Code und Schritte für den digitalen Paging-Effekt in CSS

Eine beträchtliche Anzahl von Websites verwendet d...