当前位置: 首页 > news >正文

jQuery UI 实例 - 对话框(Dialog)

jQuery UI Dialog(对话框)实例

Dialog是 jQuery UI 中最常用的组件之一,用于创建模态或非模态弹出窗口,常用于确认提示、表单编辑、内容预览、登录框、提示消息等。它支持拖拽、缩放、按钮、动画、自动居中等功能。

官方演示地址:https://jqueryui.com/dialog/

下面提供几个渐进实例,从基础到高级,代码使用最新 CDN,可直接复制到 HTML 文件测试。

1.基础模态对话框

点击按钮打开模态窗口(遮罩背景,阻止页面交互)。

<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>jQuery UI Dialog 基础示例</title><linkrel="stylesheet"href="//code.jquery.com/ui/1.13.2/themes/smoothness/jquery-ui.css"><scriptsrc="//code.jquery.com/jquery-3.6.0.min.js"></script><scriptsrc="//code.jquery.com/ui/1.13.2/jquery-ui.min.js"></script></head><body><buttonid="openDialog">打开对话框</button><divid="dialog"title="基本对话框"><p>这是一个模态对话框示例。你可以点击右上角关闭,或使用按钮关闭。</p></div><script>$(function(){$("#dialog").dialog({autoOpen:false,// 默认不打开modal:true,// 模态(背景遮罩)width:400,// 宽度height:300// 高度});$("#openDialog").click(function(){$("#dialog").dialog("open");});});</script></body></html>
2.带按钮的对话框(确认/取消)

自定义底部按钮,支持图标和回调。

<divid="confirmDialog"title="确认删除?"><p>此操作不可恢复,确定要删除吗?</p></div><script>$("#confirmDialog").dialog({autoOpen:false,modal:true,resizable:false,buttons:{"删除":function(){alert("已删除!");$(this).dialog("close");},"取消":function(){$(this).dialog("close");}}});// 示例打开方式// $("#confirmDialog").dialog("open");</script>
3.可拖拽 + 可缩放 + 其他高级选项

默认支持拖拽标题栏移动,添加resizable: true支持缩放。

<divid="advancedDialog"title="高级对话框"><p>这个对话框支持拖拽、缩放、动画、自动居中。</p><imgsrc="https://via.placeholder.com/300x150"alt="示例图片"></div><script>$("#advancedDialog").dialog({autoOpen:false,modal:true,width:500,height:400,resizable:true,// 可缩放draggable:true,// 可拖拽(默认true)position:{my:"center",at:"center",of:window},// 居中show:{effect:"fade",duration:500},// 打开动画hide:{effect:"explode",duration:500},// 关闭动画closeOnEscape:true// Esc键关闭});</script>
4.事件监听 + 动态内容
<script>$("#dialog").dialog({open:function(){console.log("对话框打开");},close:function(){console.log("对话框关闭");},resize:function(event,ui){console.log("新尺寸: "+ui.size.width+"x"+ui.size.height);}});</script>

小技巧

  • 想加载远程内容:使用open: function() { $(this).load("remote.html"); }
  • 非模态:modal: false
  • 全屏效果:width: $(window).width() * 0.9, height: $(window).height() * 0.9
  • 多个对话框:每个 div 单独初始化即可

Dialog 常用于表单验证、Ajax 提交前确认、图片查看器等。如果你需要登录表单对话框Ajax 加载内容、或无标题栏自定义样式的完整示例,请告诉我更多细节!

http://www.cnnetsun.cn/news/166161.html

相关文章:

  • 模型版本迭代中的回归测试策略
  • 【Open-AutoGLM家务提醒安排】:揭秘智能家庭任务调度背后的AI黑科技
  • Open-AutoGLM食材购买避坑指南:90%人忽略的3类关键营养匹配原则
  • Open-AutoGLM任务中断恢复实战(断点续训技术大揭秘)
  • 【Open-AutoGLM饮食热量统计】:揭秘AI自动识别食物热量的黑科技与实测效果
  • Linly-Talker如何避免‘恐怖谷效应’?外观设计心理学研究
  • 基于Spring Boot的儿童福利院管理系统的设计与实现毕业设计
  • 基于Android的网上点餐APP
  • 如何用Open-AutoGLM实现秒级故障响应?一线架构师亲授压箱底方案
  • Open-AutoGLM日志系统揭秘,掌握这6个参数才算真正入门
  • jQuery UI 实例 - 放置(Droppable)
  • 探索三相两电平光伏逆变器DC - AC部分的Simulink仿真之旅
  • 【AI推理服务稳定性提升】:基于Open-AutoGLM的后台运行配置最佳实践
  • Open-AutoGLM网络配置避坑指南(一线专家亲授12年实战经验)
  • Open-AutoGLM报错代码怎么破:从日志到修复的7步闭环流程
  • 实时交互不是梦:Linly-Talker构建高响应数字人系统
  • 从沉默到透明:Open-AutoGLM运行日志开启全流程深度解析
  • Open-AutoGLM网络调优实战:5大核心参数配置你真的懂吗?
  • Open-AutoGLM端口占用问题深度解析(专家级排错手册限时公开)
  • JSP如何设计WebUploader分片上传的交互界面?
  • Linly-Talker在光伏电站运维中的故障排查指导
  • vue3+springboot基于uniapp的二手渔具回收商城系统 钓鱼交友的微信小程序开发(编号:803442152)
  • Linly-Talker在相声贯口练习中的气息控制
  • Linly-Talker在风电场巡检中的安全规程重申
  • 设备频繁掉线怎么办,一文搞懂Open-AutoGLM连接优化的8个关键步骤
  • 【稀缺资料】Open-AutoGLM接口调用延迟降低95%的完整技术路径
  • 版本冲突频发?Open-AutoGLM智能合并策略让协作开发效率翻倍
  • Linly-Talker在潜水探险中的装备使用说明
  • Linly-Talker在有声书朗读中的章节过渡处理
  • Linly-Talker在桥牌叫牌体系教学中的逻辑演绎