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

Detailliertes Tutorial zur Installation von ffmpeg unter Linux

1. Installieren Sie ffmpeg unter Centos Linux 1. ...

Design-Tipps: Wir glauben, es wird Ihnen gefallen

<br />Wenn Sie sich diesen Titel ansehen, ko...

Verständnis des synchronen oder asynchronen Problems von setState in React

Inhaltsverzeichnis 1. Ist setState synchron? asyn...

Installationsmethode der dekomprimierten Version von MySQL 5.7.18 unter Win7x64

Weiterführende Literatur: Beheben Sie das Problem...

So erstellen Sie dynamische QML-Objekte in JavaScript

1. Objekte dynamisch erstellen Es gibt zwei Mögli...

Spezifische Verwendung der MySQL-Segmentierungsfunktion substring()

Es gibt vier wichtige MySQL-Zeichenfolgenabfangfu...

Erste Schritte mit CSS3-Animation in 10 Minuten

Einführung Mit Animation können Sie mithilfe von ...

Vollständige Schritte zur Deinstallation der MySQL-Datenbank

Der Vorgang zur vollständigen Deinstallation der ...

So verwenden Sie Spark und Scala zum Analysieren von Apache-Zugriffsprotokollen

Installieren Zuerst müssen Sie Java und Scala ins...

Implementierung der Änderung von Konfigurationsdateien im Docker-Container

1. Betreten Sie den Container docker run [Option]...