news 2026/5/25 13:21:11

jQuery UI 实例 - 对话框(Dialog)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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 加载内容、或无标题栏自定义样式的完整示例,请告诉我更多细节!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/25 14:34:51

Linly-Talker支持动态背景替换,视频创意无限延伸

Linly-Talker支持动态背景替换&#xff0c;视频创意无限延伸 在短视频与直播内容爆炸式增长的今天&#xff0c;一个核心问题始终困扰着创作者&#xff1a;如何以更低的成本、更快的速度&#xff0c;持续产出高质量、高吸引力的视觉内容&#xff1f;尤其对于企业宣传、在线教育、…

作者头像 李华
网站建设 2026/5/26 6:32:01

jQuery UI 实例 - 滑块(Slider)

jQuery UI Slider&#xff08;滑块&#xff09;实例 Slider 是 jQuery UI 中用于选择数值或范围的交互组件&#xff0c;常用于音量调节、价格筛选、时间选择、颜色调整等场景。支持单手柄、范围选择&#xff08;双柄&#xff09;、垂直方向、步长、动画等。 官方演示地址&…

作者头像 李华
网站建设 2026/5/26 6:32:00

Open-AutoGLM饮食热量统计实战指南(从0到1搭建个人营养AI助手)

第一章&#xff1a;Open-AutoGLM饮食热量统计Open-AutoGLM 是一个基于大语言模型的自动化数据处理框架&#xff0c;专为日常健康管理场景设计。其核心功能之一是通过自然语言输入自动解析食物摄入记录&#xff0c;并精确计算总热量。该系统结合了营养数据库与语义理解能力&…

作者头像 李华
网站建设 2026/5/26 5:34:46

jQuery UI 实例 - 自动完成(Autocomplete)

jQuery UI Autocomplete&#xff08;自动完成&#xff09;实例 Autocomplete 是 jQuery UI 中非常实用的组件&#xff0c;用于输入框提供智能建议列表&#xff0c;支持本地数据、远程 AJAX 数据、分类显示、自定义渲染等。常用于搜索框、标签输入、地址补全等场景。 官方演示…

作者头像 李华
网站建设 2026/5/26 3:39:37

【Open-AutoGLM洗衣时间管理】:揭秘智能算法如何提升效率300%

第一章&#xff1a;Open-AutoGLM洗衣时间管理在现代智能家居系统中&#xff0c;Open-AutoGLM作为一款开源自动化调度引擎&#xff0c;能够高效协调家电设备的运行时序。通过集成传感器数据与用户行为模式分析&#xff0c;该系统可动态优化洗衣任务的启动时间&#xff0c;从而避…

作者头像 李华