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

Detaillierte Erklärung zur Verwendung der Vue-Nummernschild-Eingabekomponente

Eine einfache Nummernschild-Eingabekomponente (vu...

Super ausführliches Tutorial zur Installation von MySQL 8.0.23

Inhaltsverzeichnis Vorwort 1. Laden Sie MySQL von...

Detaillierte Erklärung zur Verwendung des Schlüsselworts ESCAPE in MySQL

MySQL-Escape Escape bedeutet die ursprüngliche Se...

JavaScript generiert zufällige Grafiken durch Klicken

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

Ein kurzer Vortrag über die Variablenförderung in JavaScript

Inhaltsverzeichnis Vorwort 1. Welche Variablen we...

So verstehen Sie den Unterschied zwischen ref toRef und toRefs in Vue3

Inhaltsverzeichnis 1. Grundlagen 1.Referenz 2. to...

Verwenden Sie JavaScript, um Seiteneffekte zu erstellen

11. Verwenden Sie JavaScript, um Seiteneffekte zu...

Erfahren Sie, wie Sie saubere und standardmäßige HTML-Tags schreiben

Guter HTML-Code ist die Grundlage einer schönen W...

Detaillierte Erklärung der Kartenüberlagerung in OpenLayers6

1. Overlay-Übersicht Overlay bedeutet Überlagerun...

W3C Tutorial (8): W3C XML Schema Aktivitäten

XML Schema ist eine XML-basierte Alternative zu D...

Lösung für das Ausgehen der Auto-Increment-ID (Primärschlüssel) von MySQL

In MySQL werden viele Typen von Auto-Increment-ID...

Grundlegendes zu MySQL-Clusterindizes und wie Clusterindizes wachsen

In dieser Anmerkung beschreiben wir kurz Was ist ...

Vue Shuttle-Box ermöglicht Auf- und Abbewegung

In diesem Artikelbeispiel wird der spezifische Co...