Vue.js implementiert das Neun-Raster-Bildanzeigemodul

Vue.js implementiert das Neun-Raster-Bildanzeigemodul

Ich habe Vue.js verwendet, um ein Bildanzeigemodul mit neun Rastern zu erstellen, das zum Vergrößern anklickbar ist.

Die tatsächliche Wirkung des Moduls

Neun-Raster-Miniaturbildeffekt

Nach dem Heranzoomen

Code

HTML

<Vorlage>
<div Klasse="SongList">
//Verwenden Sie eine v-for-Schleife, um Miniaturansichten zu rendern <div class="covers" :style="{display:MinDisplay}">
         <div class="cover" v-for="(img,index) in imgs" :key='img'><img :src="img.src" width="90%" class="min" @click="ZoomIn(index)" alt=""></div>
       </div>
 // Rendere das vergrößerte Bild <div class="max" :style="{display:display}">
            <div @click="ZoomOut" v-for="(img,index) in imgs" :key='img' :class="[index===ShowIndex?'active':'None']" ><img :src="img.src" width="100%"></div>
            //Navigationskarte unter dem vergrößerten Bild <div class="small">
                <div :class="[{'smallActive':index===ShowIndex},'cover-small']" v-for="(Bild,Index) in Bildern" :key='img' @click="select(index)" ><img :src="img.src" width="90%"></div>
            </div>
        </div>
    </div>
</Vorlage>

CSS

<Stilbereich>
    .SongList{
        Breite: 40%;
    }
    .covers{
        Anzeige: Flex;
        Inhalt ausrichten: Abstand dazwischen;
        Flex-Wrap: Umwickeln;
    }
    .Abdeckung{
        Anzeige: Flex;
        Inhalt ausrichten: zentriert;
        Breite: 33%;
        Rand: 10px 0;
    }
    .min{
        Rahmenradius: 10px;
        Cursor: Vergrößern;
    }
    .max{
        Cursor: Herauszoomen;
        Breite: 100 %;

    }
    .klein{
        Anzeige: Flex;
        Inhalt ausrichten: Abstand dazwischen;
        Flex-Wrap: Umwickeln;
    }
    .cover-klein{
        Anzeige: Flex;
        Inhalt ausrichten: zentriert;
        Breite: 10%;
        Rand: 10px 0;
        Deckkraft: 0,6;
        Cursor: Zeiger;
    }
    .cover-small:hover{
        Deckkraft: 1;
    }
    .aktiv{
        Anzeige: Flex;
    }
    .Keiner{
        Anzeige: keine;
    }
    .smallActive{
        Deckkraft: 1;
    }

</Stil>

Javascript

<Skript>
    Standard exportieren {
        Name: "SongList",
        Daten:Funktion() {
            zurückkehren {
                ShowIndex:0,
                Anzeige: "keine",
                MinDisplay:'flex',
                //Wenn Sie eine v-for-Schleife zum Rendern von Bildern in einer Vue-Vorlage verwenden, können Sie den lokalen Speicherort der Bilddatei imgs nicht direkt verwenden:[
                    {"src":erfordern('***.jpg')},
                    {"src":erfordern('***.jpg')},
                    {"src":erfordern('***.jpg')},
                    {"src":erfordern('***.jpg')},
                    {"src":erfordern('***.jpg')},
                    {"src":erfordern('***.jpg')},
                    {"src":erfordern('***.jpg')},
                    {"src":erfordern('***.jpg')},
                    {"src":erfordern('***.jpg')},
                ]

            };
        },
        Methoden:{
            ZoomIn(i){
               dies.Anzeige='Block';
                dies.MinDisplay='keine';
                dies.ShowIndex=i;
            },
            ZoomOut(){
                diese.Anzeige='keine';
                dies.MinDisplay='flex';
            },
            auswählen(i){
                dies.ShowIndex=i;


            }
        }
    }

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:
  • Vue-Komponente zur Realisierung einer Drehtischlotterie mit neun Quadratgittern auf mobilen Endgeräten
  • Jiugongge-Lotteriefunktion basierend auf VUE
  • Ein vollständiges Beispiel eines Neun-Quadrate-Puzzlespiels, implementiert mit jQuery+vue.js [mit Quellcode-Download]

<<:  Tutorial zur HTML-Tabellenauszeichnung (41): Breiten- und Höhenattribute der Tabellenüberschrift WIDTH, HEIGHT

>>:  So aktivieren Sie die Swoole Loader-Erweiterung auf dem virtuellen Host des Linux-Systems

Artikel empfehlen

Analyse des Prinzips der Zentrierung von Elementen mit CSS

Es ist eine sehr häufige Anforderung, die horizon...

Front-End-JavaScript-Funktionsprinzip

Inhaltsverzeichnis 1. Was ist eine JavaScript-Eng...

Die Organisation W3C gibt Stilempfehlungen für HTML4

Dies ist die Stilempfehlung der W3C-Organisation f...

Welche Codes sollte ich beherrschen, wenn ich Webdesign lerne?

In diesem Artikel werden einige der Techniken ausf...

Einfacher Webseitencode, der im NetEase-Blog verwendet wird

So verwenden Sie den Code im NetEase-Blog: Melden...

SQL-Implementierung von LeetCode (175. Zwei Tabellen verbinden)

[LeetCode] 175.Zwei Tabellen kombinieren Tabelle:...

Centos7-Installation und Konfiguration von Mysql5.7

Schritt 1: Holen Sie sich die MySQL YUM-Quelle Ge...

Tiefgreifendes Verständnis der Rolle von Vuex

Inhaltsverzeichnis Überblick So teilen Sie Daten ...