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

Wartungsmethode für den Innodb-Systemtabellenbereich

Umweltbeschreibung: Es gibt eine laufende MySQL-U...

Gängige Master-Slave-Replikationsarchitekturen in MySQL 4

Inhaltsverzeichnis Replikationsarchitektur mit ei...

Durch das flexible Layout können Unterelemente ihre eigene Höhe beibehalten

Beim Verwenden des Flex-Layouts werden Sie festst...

HTML CSS3 streckt den Bildanzeigeeffekt nicht

1. Verwenden Sie das Transform-Attribut, um das B...

Setzen Sie den Eingang auf schreibgeschützt über deaktiviert und schreibgeschützt

Es gibt zwei Möglichkeiten, schreibgeschützte Eing...

Linux entfernt node.js vollständig und installiert es über den Befehl yum neu

erster Schritt Einmaliges Löschen mit der integri...

Beispiel für das Schreiben von mobilem H5 zum Aufrufen einer APP (IOS, Android)

iOS 1. URL-Schema Diese Lösung ist grundsätzlich ...

CentOS-Methode zum Ändern der Standard-SSH-Portnummer – Beispiel

Die Standard-SSH-Portnummer von Linux-Servern ist...

Heute bin ich auf ein sehr seltsames Problem gestoßen und habe es selbst gelöst

...Es ist so, heute wollte ich ein Popup-Fenster m...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7.20 (Win10)

In diesem Artikel wird die Installations- und Kon...

HTML-Code zum Hinzufügen von Symbolen zum transparenten Eingabefeld

Ich habe vor Kurzem eine Website mit Anwaltsempfe...