Detaillierte Erklärung zur Verwendung der JavaScript-Paging-Komponente

Detaillierte Erklärung zur Verwendung der JavaScript-Paging-Komponente

Die Paginierungskomponente ist eine häufige Komponente in der Webentwicklung. Bitte vervollständigen Sie die Paginierungsfunktion und vervollständigen Sie den Paginierungsanzeigeteil im DOM-Element mit der ID jsPagination. Die Anforderungen sind wie folgt

1. Anzeige von bis zu 5 Seiten in einer Reihe, wobei die aktuelle Seite in der Mitte hervorgehoben ist (wie in Demo1 gezeigt)
2. Wenn die Summe 0 ist, das gesamte Element ausblenden (wie in Demo2 gezeigt)
3. Wenn die Gesamtzahl <= 5 ist, werden alle Seiten angezeigt und die Elemente „erste Seite“ und „letzte Seite“ werden ausgeblendet (wie in Demo3 gezeigt).
4. Wenn die aktuelle Seite in der Mitte weniger als 5 Seiten hat, fügen Sie hinten (vorne) 5 Seiten hinzu und verbergen Sie die Elemente „erste Seite“ („letzte Seite“) (wie in Demo4 und Demo5 gezeigt).
5. total und current sind beide positive Ganzzahlen, 1 <= current <= total

Verwenden Sie natives JS, um die Paging-Komponente zu implementieren und die oben genannten Anforderungen zu erfüllen. Die folgenden Punkte sind zu beachten

1: Beim Abrufen des <li>-Tags muss nextSibling zweimal verwendet werden, da sich zwischen dem vorherigen <li>-Tag und dem nächsten <li>-Tag ein Textknoten befindet.

Seite = Seite.nächstesGeschwister.nächstesGeschwister;

2: Das innerHTML des bereitgestellten <li>-Tags lautet '' und die Seitenzahl muss hinzugefügt werden. Schreiben Sie entsprechend den fünf Situationen in den Anforderungen

3: Achten Sie besonders auf den versteckten Status der ersten und letzten Seite. Wenn current-2<=1, wird die erste Seite ausgeblendet; wenn current+2.>=total, wird die letzte Seite ausgeblendet. Die Notwendigkeit, die erste und die letzte Seite auszublenden, besteht in den oben genannten Demo1, Demo3, Demo4 und Demo5. (Das Ausblenden der ersten und letzten Seite von Demo1 wird leicht übersehen!)

HTML

<ul Klasse="pagination" id="jsPagination">
    <li>Startseite</li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li>Letzte Seite</li>
</ul>

CSS

.verstecken{
    Anzeige: keine!wichtig;
}
.Pagination{
    Rand: 0 automatisch;
    Polsterung: 0;
    Listenstil: keiner;
    Textausrichtung: zentriert;
}
.pagination li{
    Anzeige: Inline-Block;
    Breite: 30px;
    Höhe: 30px;
    Überlauf: versteckt;
    Zeilenhöhe: 30px;
    Rand: 0,5px 0,0;
    Schriftgröße: 14px;
    Textausrichtung: zentriert;
    Rand: 1px durchgezogen #00bc9b;
    Farbe: #00bc9b;
    Cursor: Zeiger;
}
.pagination li.current,
.pagination li:hover{
    Hintergrund: #00bc9b;
    Farbe: #ffffff;
}
.demo {
    Rand: 10px 0;
    Polsterung: 10px;
    Hintergrund: #eeeeee;
    Textausrichtung: zentriert;
}

JavaScript

Funktion Paginierung(gesamt, aktuell) {
        var ele = document.getElementById('jsPagination');
        //für demo1
        wenn (aktuell-2>=1&¤t+2<=gesamt)
        {
            var page=ele.erstesKind.nächstesGeschwister;
            wenn(aktuell-2==1)
                page.className='ausblenden';
            für (var i = aktuell-2, p = aktuell-2; i <= aktuell +2; p++, i++)
            {
                Seite=Seite.nächstesGeschwister;
                console.log(Seite);
                Seite=Seite.nächstesGeschwister;
                console.log(Seite);
                Seite.innerHTML=i;
                wenn(i==aktuell)
                    Seite.Klassenname='aktuell';
            }
            wenn(aktuell+2==gesamt)
            {
                var last=seite.nächstesGeschwister.nächstesGeschwister;
                letzter.Klassenname='ausblenden';
            }
        }
        //für demo2
        sonst wenn (gesamt==0)
        {
            ele.className='Seitennummerierung ausblenden';
        }
        //für demo3
        sonst wenn (Gesamt<=5)
        {
            var fir=ele.erstesKind.nächstesGeschwister;
            fir.className='ausblenden';
            var Seite=Tanne;
            für(var i=1;i<=5;i++) {
                Seite = Seite.nächstesGeschwister.nächstesGeschwister;
                wenn (i <= gesamt) {
                    Seite.innerHTML=i;
                    wenn(i==aktuell)
                        Seite.Klassenname='aktuell';
                }
                anders
                {
                    page.className='ausblenden';
                }
 
            }
            var last=seite.nächstesGeschwister.nächstesGeschwister;
            letzter.Klassenname='ausblenden';
        }
        //für demo4
        sonst wenn(aktuell-2<=0)
        {
            var page=ele.erstesKind.nächstesGeschwister;
            page.className='ausblenden';
            für(var i=1;i<=5;i++) {
                Seite = Seite.nächstesGeschwister.nächstesGeschwister;
                Seite.innerHTML=i;
                    wenn(i==aktuell)
                        Seite.Klassenname='aktuell';
            }
 
        }
        //für demo5
        sonst wenn (aktuell+2>gesamt)
        {
            var page=ele.erstesKind.nächstesGeschwister;
            für(var i=total-4;i<=total;i++) {
                Seite = Seite.nächstesGeschwister.nächstesGeschwister;
                Seite.innerHTML=i;
                wenn(i==aktuell)
                    Seite.Klassenname='aktuell';
            }
            var last=seite.nächstesGeschwister.nächstesGeschwister;
            letzter.Klassenname='ausblenden';
 
        }
}

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:
  • Implementierung der Paging-Komponente von Vue.js: Detaillierte Erläuterung der Verwendung von diVuePagination
  • Vuejs2.0 implementiert die Methode zur Verwendung von $emit zum Abhören von Ereignissen und Übertragen von Daten in Paging-Komponenten
  • Ein Beispiel für die Verwendung der AngularJS-Direktive zur Implementierung von Paging-Komponenten
  • Reactjs implementiert den Beispielcode der universellen Paging-Komponente
  • Native js schreibt objektorientierte Paging-Komponenten
  • Vue.js implementiert eine benutzerdefinierte Paging-Komponente vue-paginaiton
  • Verwenden von vue.js zum Erstellen von Paging-Komponenten
  • Tabellen-Paging-Komponente basierend auf Vue.js
  • Detaillierte Erläuterung der Verwendung der multifunktionalen JS-Paging-Komponente layPage
  • Teilen Sie eine einfache Javascript-Paging-Komponente, die ich selbst geschrieben habe

<<:  Diagramm des Installations- und Verwendungstutorials für MySQL 8.0.17

>>:  Was sind die Unterschiede zwischen CDN, SCDN und DCDN zur Website-Beschleunigung? Wie man wählt?

Artikel empfehlen

Installationsschritte für die chinesische Eingabemethode von Ubuntu 20.04

Dieser Artikel installiert die Google-Eingabemeth...

Installation und Verwendung der Ubuntu 18.04 Serverversion (Bild und Text)

1 Schritte zur Systeminstallation Betriebssystemv...

Einige Fehler, die JavaScript-Anfänger häufig machen

Inhaltsverzeichnis Vorwort Verwechslung von „unde...

Einführung in das Linux-Netzwerksystem

Inhaltsverzeichnis Netzwerk Informationen Ändern ...

Das Laufschrift-Tag in HTML erzielt einen nahtlosen Laufschrift-Effekt

Das <marquee>-Tag ist ein Tag, das paarweis...

CSS3-Beispielcode zum Erreichen einer Elementbogenbewegung

So verwenden Sie CSS, um die Bogenbewegung von El...

Häufige CSS-Fehler und Lösungen

Code kopieren Der Code lautet wie folgt: Untersch...

So zeigen Sie Bilder im TIF-Format im Browser an

Der Browser zeigt Bilder im TIF-Format an Code kop...

Bild-Tag für HTML-Webseite

Bild-Tag <IMG> einfügen Die farbenfrohen Web...

Schritte für Vue3 zur Verwendung von Mitt für die Komponentenkommunikation

Inhaltsverzeichnis 1. Installation 2. Ins Projekt...