JavaScript imitiert den Taobao-Lupeneffekt

JavaScript imitiert den Taobao-Lupeneffekt

In diesem Artikel wird der spezifische Code für JavaScript zur Erzielung des Taobao-Lupeneffekts als Referenz bereitgestellt. Der spezifische Inhalt ist wie folgt

HTML Quelltext

 <div Klasse="Vorschaubild">
        <img src="./img/12-1Z930152149 (2).jpg" alt="">
        <div Klasse = "Magnifier"></div>
    </div>
    <div Klasse="Original">
        <img src="./img/12-1Z930152149 (2).jpg" alt="">
    </div>
<script src="./index.js"></script>

CSS Code

*{
            Rand: 0;
            Polsterung: 0;
        }
        .thumbnail , .original{
            Breite: 400px;
            Höhe: 400px;
            Rand: 1px durchgehend rot;
            Position: absolut;
        }
        .Original{
            links: 450px;
            Überlauf: versteckt;
            Anzeige: keine;
        }
        .thumbnail>img{
            Breite: 400px;
        }
        .original>img{
            Breite: 800px;
            Position: absolut;
        }
        .Magnifier{
            Cursor: bewegen;
            Breite: 200px;
            Höhe: 200px;
            Hintergrundfarbe: rgba (206, 198, 198, 0,5);
            Position: absolut;
            oben: 0;
            links: 0;
            Anzeige: keine;
            
        }

JS-Code

// Miniaturansicht Miniaturansicht // Original Originalbild // Lupe Lupe $(".thumbnail").mouseover(function(){
    $(".magnifier").anzeigen()
    $(".original").anzeigen()
})
$(".thumbnail").mousemove(Funktion(ev){
    // konsole.log(ev)
    // xy-Koordinaten der Maus relativ zur Seite var mx = ev.pageX;
    var my =ev.pageY;
    
    var tx = mx - $(".thumbnail").offset().left
    var ty = my - $(".thumbnail").offset().top


    var l = tx -$(".magnifier").width()/2;
    var t = ty -$(".magnifier").height()/2;

    var maxX = $(".thumbnail").width() - $(".magnifier").width();
    var maxY = $(".thumbnail").height() - $(".magnifier").height()

    // Verarbeitungsgrenzen if( l >maxX){
        l = maxX
    }
    wenn( t >maxY){
        t = maxY
    }
    wenn(l <0){
        l =0
    }
    wenn(t<0){
        t=0
    }

    //Lupenposition $(".magnifier").css({
        links: l +"px",
        oben: t + "px"
    })

    //Ursprünglicher Bildspeicherort$(".original >img").css({
        links: -l*2 +"px",
        oben: -t*2 +"px"
    })
})
// Lupe ausblenden, wenn die Maus das Originalbild verlässt$(".thumbnail").mouseout(function(){
    $(".magnifier").hide();
    $(".original").ausblenden();

})

Wirkung:

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:
  • Implementierungsprozess des Lupeneffekts im Javascript-Beispielprojekt
  • JavaScript realisiert Lupen-Spezialeffekte
  • JavaScript imitiert die Spezialeffekte der Jingdong-Lupe
  • Objektorientierte JavaScript-Implementierung eines Lupengehäuses
  • JavaScript imitiert den Jingdong-Lupeneffekt
  • JavaScript zum Erzielen eines Lupeneffekts
  • Ideen und Codes zur Realisierung des Lupeneffekts in js
  • JavaScript-Implementierung von Lupendetails

<<:  So verwenden Sie CSS, um zwei in der Mitte fixierte und adaptive Spalten zu erreichen

>>:  Ausführliche Erklärung zur Docker-Maschine

Artikel empfehlen

Detaillierte Erklärung der MySQL-Gruppierung durch Optimierung

Inhaltsverzeichnis Standardausführungsprozess Opt...

Linux-Plattform MySQL ermöglicht Remote-Login

Während des Entwicklungsprozesses stoße ich häufi...

Vier Möglichkeiten zum Wechseln von Registerkarten in VUE

Inhaltsverzeichnis 1. Statische Implementierungsm...

Ursachen und Lösungen für Verzögerungen bei der MySQL Master-Slave-Replikation

Inhaltsverzeichnis Ein kurzer Überblick über die ...

Preistabelle mit CSS3 implementiert

Ergebnis: Implementierungscode html <div id=&q...

Eine kurze Erläuterung der vier häufig verwendeten Speicher-Engines in MySQL

Einführung in vier häufig verwendete MySQL-Engine...

Grundlegendes Verständnis und Verwendung der HTML-Auswahloption

Detaillierte Erklärung von HTML (Option auswählen)...

Webdesign-TabIndex-Element

TabIndex dient zum Drücken der Tabulatortaste, um ...

MySQL-Onlineprobleme mit langsamem Log und Optimierungslösungen

Das MySQL-Slow-Log ist ein Informationstyp, auf d...

React verwendet Emotionen zum Schreiben von CSS-Code

Inhaltsverzeichnis Einführung: Installation von E...