如何使用JavaScript单例模式实现自定义弹框
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要为大家展示了"如何使用JavaScript单例模式实现自定义弹框",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"如何使用JavaScript单例
千家信息网最后更新 2025年11月07日如何使用JavaScript单例模式实现自定义弹框
这篇文章主要为大家展示了"如何使用JavaScript单例模式实现自定义弹框",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"如何使用JavaScript单例模式实现自定义弹框"这篇文章吧。
功能
自定义弹框标题
自定义弹框内容
自定义弹框确认和关闭时的回调函数
完整代码
const Dialog = (function () { class Dialog { constructor () { this.ele = document.createElement('div') this.ele.className = 'dialog' document.body.appendChild(this.ele) this.callback = null this.setEvent() } setContent ({ text, topicText, confirmText, cancelText } = options) { this.ele[xss_clean] = null const top = document.createElement('div') top.className = 'top' const topic = document.createElement('span') topic.className = 'topic' topic[xss_clean] = topicText const close = document.createElement('span') close.className = 'close' close[xss_clean] = '×' top.appendChild(topic) top.appendChild(close) const middle = document.createElement('div') middle.className = 'middle' const content = document.createElement('div') content.className = 'content' content[xss_clean] = text middle.appendChild(content) const bottom = document.createElement('div') bottom.className = 'bottom' const confirm = document.createElement('button') confirm.className = 'confirm' confirm[xss_clean] = confirmText const cancel = document.createElement('button') cancel.className = 'cancel' cancel[xss_clean] = cancelText bottom.appendChild(confirm) bottom.appendChild(cancel) const wrap = document.createElement('div') this.ele.appendChild(top) this.ele.appendChild(middle) this.ele.appendChild(bottom) this.ele.style.display = 'block' } setEvent () { this.ele.addEventListener('click', e => { e = e || window.event const target = e.target || e.srcElement if (target.className === 'close') { this.ele.style.display = 'none' console.log('close') } if (target.className === 'confirm') { this.ele.style.display = 'none' this.callback(true) } if (target.className === 'cancel') { this.ele.style.display = 'none' this.callback(false) } }) } } let instance = null return function (options, cb) { if (!instance) instance = new Dialog() instance.setContent(options) instance.callback = cb || function () {} return instance } })() const dialog = new Dialog({ text: '提示文字', topicText: '标题', confirmText: '确定', cancelText: '取消' }, res => { console.log(res) })效果图

以上是"如何使用JavaScript单例模式实现自定义弹框"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
内容
模式
篇文章
标题
学习
帮助
代码
函数
功能
效果
效果图
文字
易懂
更多
条理
知识
编带
行业
资讯
资讯频道
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全义务 北京 24小时
太原耐特安网络技术有限公司
福州天睿网络技术
黑龙江软件开发地址
小程序软件开发推荐
黑客攻击服务器英文缩写
8x服务器
gooogle连接服务器出问题
数据库报错序列号无效
单位网络安全自查结果
ecshop 查询数据库
mysql数据库的卸载
服务器管理的连接方式
绍兴市网络安全委员会招聘
喷射战士服务器
个人网络安全信息化管理
新郑市亮八方网络技术中心
淮北点餐系统软件开发公司
seo站群服务器快速排名
远程服务器返回错误417
网络安全相关知识题
绿书签行动网络安全的手抄报
学术猫数据库图书馆
软件开发企业准则
计算机网络技术网络工程专业
想学点网络技术赚钱
串口显示ad数据库
成都java软件开发工程师
天津工业软件开发直销价格
qq邮箱登录提示服务器验证失败