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

So installieren Sie PHP7.4 und Nginx auf Centos

Vorbereiten 1. Laden Sie das erforderliche Instal...

Zusammenfassung gängiger MySQL-Befehle

Festlegen des MySQL-Root-Passworts Melden Sie sic...

Lösung für den ineffektiven Rand von in HTML verschachtelten Divs

Hier ist eine Lösung für das Problem, dass der Ra...

Reiner CSS-Header, korrigierter Implementierungscode

Es gibt zwei Hauptgründe, warum es schwierig ist,...

Zusammenfassung der Anwendungsbereiche von Kubernetes

Kubernetes ist aufgrund seiner Anwendungsportabil...

8 leistungsstarke Techniken zum Erstellen von HTML-Webseiten

<br />Es gibt zwar viele Tools zum Erstellen...

Reines CSS, um den Listen-Pulldown-Effekt auf der Seite zu erzielen

Möglicherweise sehen Sie häufig den folgenden Eff...

Deaktivieren der AutoVervollständigen-Funktion im Eingabefeld

Jetzt können wir ein Eingabeattribut namens „Autov...

Tipps zur Verwendung des Top-Befehls in Linux

Lassen Sie mich zunächst die Bedeutung einiger Fe...

Implementierung des Umschreibesprungs in Nginx

1. Neuer und alter Domain-Namenssprung Anwendungs...

Javascript realisiert 10-Sekunden-Countdown zur Bezahlung

In diesem Artikel wird der spezifische Code von J...

Responsive Layout-Zusammenfassung (empfohlen)

Grundkenntnisse der responsiven Layoutentwicklung...

So verwenden Sie residente Knoten für die Ebenenverwaltung in CocosCreator

CocosCreator-Version: 2.3.4 Die meisten Spiele ve...