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    

Artikel empfehlen

Bootstrap+Jquery zum Erreichen eines Kalendereffekts

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

CSS erzielt den Effekt der Vermischung zweier Elemente (Sticky-Effekt)

Ich erinnere mich, dass es vor ein paar Jahren in...

Beispiel-Tutorial für geplante MySQL-Aufgaben

Vorwort Seit MySQL 5.1.6 wurde eine einzigartige ...

Unterschied zwischen HTML ReadOnly und Enabled

Das Textfeld mit dem ReadOnly-Attribut wird auf de...

Zusammenfassung der Methoden zum Löschen des Cache im Linux-System

1) Einführung in den Cache-Mechanismus Um die Lei...

Die Komponente vue-cropper realisiert das Zuschneiden und Hochladen von Bildern

In diesem Artikel wird der spezifische Code der V...

Eine kurze Diskussion über die MySQL-Zeilenanzahl

Wir alle kennen die MySQL-Funktion count(), mit d...

VM VirtualBox virtuelle Maschine mounten freigegebenen Ordner

Eine Umgebung Installieren Sie VMware Tools auf C...

Detaillierte Erklärung des Middleman-Modus von Angular-Komponenten

Inhaltsverzeichnis 1. Mittelsmann-Modell 2. Beisp...