JavaScript-Singleton-Modus zum Implementieren benutzerdefinierter Popup-Fenster

JavaScript-Singleton-Modus zum Implementieren benutzerdefinierter Popup-Fenster

In diesem Artikel wird der spezifische Code des JavaScript-Singleton-Modus zur Implementierung benutzerdefinierter Popup-Fenster zu Ihrer Information bereitgestellt. Der spezifische Inhalt ist wie folgt

Funktion

  • Popup-Titel anpassen
  • Popup-Inhalte anpassen
  • Passen Sie die Rückruffunktion zum Bestätigen und Schließen des Popup-Fensters an

Vollständiger Code

const Dialog = (Funktion () {
 Klasse Dialog {
   Konstruktor () {
     dies.ele = Dokument.createElement('div')
     this.ele.className = "Dialog"
     Dokument.Body.AnhängenUntergeordnetesElement(dieses.ele)
     this.callback = null
     dies.setEvent()
   }
 
   setContent ({ Text, Thementext, Bestätigungstext, Abbruchtext } = Optionen) {
     this.ele.innerHTML = null
     const top = document.createElement('div')
     top.Klassenname = "oben"
     const Thema = Dokument.createElement('span')
     Thema.Klassenname = "Thema"
     topic.innerHTML = Thementext
     const close = document.createElement('span')
     close.className = "schließen"
     schließen.innerHTML = '×'
     top.appendChild(Thema)
     top.appendChild(schließen)
     const middle = document.createElement('div')
     mitte.className = "Mitte"
     const Inhalt = Dokument.createElement('div')
     content.className = "Inhalt"
     content.innerHTML = Text
     Mitte.AnhängenKind(Inhalt)
     const bottom = document.createElement('div')
     unten.className = "unten"
     const bestätigen = document.createElement('Schaltfläche')
     bestätigen.className = "bestätigen"
     bestätigen.innerHTML = Bestätigungstext
     const abbrechen = document.createElement('Schaltfläche')
     abbrechen.className = "abbrechen"
     abbrechen.innerHTML = Text abbrechen
     bottom.appendChild(bestätigen)
     bottom.appendChild(abbrechen)
     const wrap = Dokument.createElement('div')
     this.ele.appendChild(oben)
     this.ele.appendChild(Mitte)
     dieses.ele.appendChild(unten)
     dies.ele.style.display = "Block"
   }
 
   setzeEreignis () {
     this.ele.addEventListener('klicken', e => {
       e = e || Fenster.Ereignis
       const Ziel = e.Ziel || e.QuelleElement
       wenn (Ziel.Klassenname === 'schließen') {
         this.ele.style.display = "keine"
         console.log('schließen')
       }
       wenn (Ziel.Klassenname === 'bestätigen') {
         this.ele.style.display = "keine"
         dies.callback(true)
       }
       wenn (Ziel.Klassenname === 'Abbrechen') {
         this.ele.style.display = "keine"
         dies.callback(false)
       }
     })
   }
 }
 let-Instanz = null
 return Funktion (Optionen, cb) {
   wenn (!Instanz) Instanz = neuer Dialog()
   Instanz.setContent(Optionen)
   Instanz.Rückruf = cb || Funktion () {}
   Rückgabeinstanz
 }
 })()
 
 const dialog = neuer Dialog({
 Text: 'Eingabeaufforderungstext',
 topicText: 'Titel',
 confirmText: 'Bestätigen',
 cancelText: 'Abbrechen'
 }, res => { console.log(res) })

Rendern

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:
  • js + html5 realisiert den Effekt einer Popup-Box mit halbtransparenter Maskenebene
  • Toast-Verwendung in vue.js und Beispielcode mit Toast-Popup-Fenster
  • Kapselung des benutzerdefinierten JS-Popup-Box-Plug-Ins
  • Einfache Implementierung von Anzeigeoptionen für JS-Popup-Boxen
  • Vue.js implementiert Popup-Fenster nur einmal
  • js, um den Effekt von Popup-Boxen nach oben, unten, links und rechts zu erzielen
  • Implementieren Sie die Auswahl der Lieferadresse im Popup-Fenster basierend auf layer.js und geben Sie die entsprechenden Adressinformationen zurück
  • JavaScript zum Erstellen eines Popup-Fensters, das nicht geschlossen werden kann
  • Beispielcode von Bootstrap und Angularjs mit selbst erstellter Popup-Box
  • js schreibt das Warnereignis neu (vermeidet, dass die URL im Titel des Warn-Popup-Fensters erscheint)

<<:  Erfahrungsaustausch zur MySQL-Slave-Wartung

>>:  Proxy_pass-Methode in mehreren if in Nginx-Standorten

Artikel empfehlen

Vollständige Analyse der MySQL-Datentypen

Datentyp: Die grundlegenden Regeln, die definiere...

Detaillierte Erklärung der verfügbaren Umgebungsvariablen in Docker Compose

Mehrere Teile von Compose befassen sich in irgend...

Beispiel für eine MySQL-Datenbank-übergreifende Transaktions-XA-Operation

In diesem Artikel wird die MySQL-Datenbank-übergr...

HTML-Tutorial: Titelattribut und Alt-Attribut

XHTML ist die Grundlage des CSS-Layouts. jb51.net...

Eine kurze Einführung in Linux-Leistungsüberwachungsbefehle kostenlos

Wie können wir den Fehler lokalisieren, wenn im S...

Gängige Methoden zur Optimierung der Docker-Imagegröße

Die Docker-Images, die wir normalerweise erstelle...

So überprüfen Sie die Festplattengröße und mounten die Festplatte in Linux

Es gibt zwei Arten von Festplatten in Linux: gemo...

Beispielanalyse der Verwendung des neuen JSON-Feldtyps in MySQL 5.7

Dieser Artikel veranschaulicht anhand eines Beisp...

echars 3D-Kartenlösung für benutzerdefinierte Farben von Regionen

Inhaltsverzeichnis Frage verlängern Lösung des Pr...

Sechs Möglichkeiten zur Steigerung der Geschwindigkeit Ihrer Website

1. Ersetzen Sie die Adresse Ihrer .js-Bibliotheks...

Mehrere Möglichkeiten zur Implementierung der Vererbung in JavaScript

Inhaltsverzeichnis Strukturelle Vererbung (implem...