この記事では、カスタムポップアップボックスを実装するためのJavaScriptシングルトンモードの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。 関数
完全なコードconst ダイアログ = (関数 () { クラスダイアログ{ コンストラクタ(){ this.ele = document.createElement('div') this.ele.className = 'ダイアログ' document.body.appendChild(this.ele) this.callback = null イベントを設定する } setContent ({ テキスト、トピックテキスト、確認テキスト、キャンセルテキスト } = オプション) { this.ele.innerHTML = null 定数 top = document.createElement('div') top.className = 'top' 定数トピック = document.createElement('span') topic.className = 'トピック' topic.innerHTML = トピックテキスト 定数close = document.createElement('span') close.className = 'close' close.innerHTML = '×' top.appendChild(トピック) top.appendChild(閉じる) const 中間 = document.createElement('div') middle.className = 'middle' 定数コンテンツ = document.createElement('div') content.className = 'コンテンツ' content.innerHTML = テキスト middle.appendChild(コンテンツ) 定数ボトム = document.createElement('div') bottom.className = 'bottom' const 確認 = document.createElement('button') confirm.className = '確認' 確認.innerHTML = 確認テキスト const キャンセル = document.createElement('button') cancel.className = 'キャンセル' キャンセル.innerHTML = キャンセルテキスト bottom.appendChild(確認) bottom.appendChild(キャンセル) 定数 wrap = document.createElement('div') this.ele.appendChild(トップ) this.ele.appendChild(中間) this.ele.appendChild(下) this.ele.style.display = 'ブロック' } イベントを設定する(){ this.ele.addEventListener('クリック', e => { e = e || ウィンドウイベント 定数ターゲット = e.target || e.srcElement (target.className === 'close')の場合{ this.ele.style.display = 'なし' コンソールログ('閉じる') } (target.className === '確認')の場合{ this.ele.style.display = 'なし' this.callback(true) } target.className === 'キャンセル'の場合{ this.ele.style.display = 'なし' this.callback(false) } }) } } インスタンス = null とする 関数を返す(オプション、cb){ if (!instance) インスタンス = new Dialog() インスタンス.setContent(オプション) インスタンス.コールバック = cb || 関数 () {} インスタンスを返す } })() const ダイアログ = 新しいダイアログ({ テキスト: 'プロンプトテキスト'、 topicText: 'タイトル', confirmText: '確認', cancelText: 'キャンセル' }, res => { console.log(res) }) レンダリング 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
>>: nginx の場所に複数の Proxy_pass メソッドがある
序文ページを共有するときに、ブラウザの戻るボタンをクリックしてプロジェクトのホームページに戻り、訪問...
iframe の使い方:コードをコピーコードは次のとおりです。 <DIV align=cent...
grubの起動時間を変更するためのオンライン検索は基本的に/etc/default/grubを変更す...
仮想マシンを使用しているときに、ディスク容量が不足し、継続使用するためにディスクをマウントする必要が...
<br />しばらくの間、多くの人が XHTML の使い方を知らないことに気付きました。...
目次序文オプションの連鎖ヌル結合呼び出されていない関数のチェック他の序文TypeScript 3.7...
この記事では、カレンダー効果を実現するためのJavaScriptの具体的なコードを参考までに紹介しま...
1. ホットリンクの原則1.1 Webページの準備Web ソース ホスト (192.168.153...
目次1. はじめに2. 解決策2.1 ファイアウォールを設定してポートを開く2.3 ポートを確認し、...
序文Linux システムのパフォーマンスを監視するために使用できるオープンソースの監視ツールが市場に...
1. 子コンポーネントのthis.$parent.eventを通じて親コンポーネントメソッドを直接呼...
ダウンロードしたバージョンは、Zip 解凍版、Windows システムです。長い間 Windows ...
Windows 64ビットでのMySQLのインストールについて説明します。5.7以降、MySQLの...
目次序文単一ファイルコンポーネント基本概念シンプルなローダーコンポーネントコンテンツの解析コンポーネ...
序文CentOS 環境変数設定ファイル システムは階層型システムであり、他のマルチユーザー アプリケ...