news 2026/6/10 16:10:31

jQuery UI 实例 - 菜单(Menu)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
jQuery UI 实例 - 菜单(Menu)

jQuery UI Menu(菜单)实例

Menu是 jQuery UI 中用于创建下拉菜单、上下文菜单或导航菜单的组件。它基于无序列表<ul>结构,支持多级子菜单、图标、禁用项、分隔线等。常用于下拉导航、工具菜单、右键上下文菜单。

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

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

1.基础垂直菜单(带子菜单)

鼠标悬停或点击展开子菜单。

<!DOCTYPEhtml><html><head><metacharset="utf-8"><title>jQuery UI Menu 基础示例</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><style>#menu{width:200px;}</style></head><body><ulid="menu"><li><ahref="#">文件</a><ul><li><ahref="#">新建</a></li><li><ahref="#">打开</a></li><li><ahref="#">保存</a></li><liclass="ui-state-disabled"><ahref="#">另存为(禁用)</a></li><li><div>分隔线</div></li><!-- 分隔线 --><li><ahref="#">退出</a></li></ul></li><li><ahref="#">编辑</a><ul><li><ahref="#">撤销</a></li><li><ahref="#">重做</a></li></ul></li><li><ahref="#">帮助</a><ul><li><ahref="#">关于</a></li></ul></li></ul><script>$(function(){$("#menu").menu();});</script></body></html>
2.带图标的菜单

使用 jQuery UI 内置图标类ui-icon-*

<ulid="menu-icons"><li><ahref="#"><spanclass="ui-icon ui-icon-disk"></span>保存</a></li><li><ahref="#"><spanclass="ui-icon ui-icon-print"></span>打印</a></li><li><ahref="#"><spanclass="ui-icon ui-icon-trash"></span>删除</a></li><li><ahref="#"><spanclass="ui-icon ui-icon-heart"></span>收藏</a></li></ul><script>$("#menu-icons").menu({icons:{submenu:"ui-icon-triangle-1-e"}// 子菜单箭头});</script><style>.ui-menu .ui-icon{vertical-align:middle;margin-right:8px;}</style>
3.下拉菜单(结合 Button)

将 Menu 作为下拉菜单使用。

<buttonid="menu-btn">操作<spanclass="ui-icon ui-icon-triangle-1-s"></span></button><ulid="dropdown-menu"style="display:none;"><li><ahref="#">选项1</a></li><li><ahref="#">选项2</a></li><li><ahref="#">选项3</a></li></ul><script>$("#dropdown-menu").menu();$("#menu-btn").click(function(e){$("#dropdown-menu").menu("toggle");// 切换显示$("#dropdown-menu").position({my:"left top",at:"left bottom",of:this});e.preventDefault();});</script>
4.事件监听(select) + 禁用项
<script>$("#menu").menu({select:function(event,ui){console.log("选中菜单项:"+ui.item.text());alert("你选择了:"+ui.item.text());}});</script>

小技巧

Menu 组件适合构建结构化导航。如果你需要水平顶部导航菜单右键上下文菜单(使用第三方插件),或动态加载菜单项的示例,请提供更多细节!

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

jQuery UI 实例 - 旋转器(Spinner)

jQuery UI Spinner&#xff08;旋转器&#xff09;实例 Spinner 是 jQuery UI 中用于数字输入的组件&#xff0c;它将普通 <input type"number"> 增强为带上下箭头的旋转器&#xff0c;支持步长、范围限制、动画、自定义图标等。常用于数量选择、评分调整、年…

作者头像 李华
网站建设 2026/6/10 13:00:31

jQuery UI 实例 - 缩放(Resizable)

jQuery UI Resizable&#xff08;缩放&#xff09;实例 jQuery UI 的 Resizable 交互允许用户通过鼠标拖动元素边角或边框来改变元素大小。常用于实现可调整大小的窗口、面板、分栏布局、图片预览等。 推荐查看官方演示&#xff1a;https://jqueryui.com/resizable/ 下面提供…

作者头像 李华
网站建设 2026/6/10 10:58:09

Linly-Talker支持批量生成,万条视频自动化生产方案

Linly-Talker支持批量生成&#xff0c;万条视频自动化生产方案 在内容为王的时代&#xff0c;企业对高质量数字人视频的需求正以前所未有的速度增长。从产品宣传到在线课程&#xff0c;从多语言本地化到个性化客服&#xff0c;每天都有成千上万条讲解视频需要制作。但传统方式依…

作者头像 李华
网站建设 2026/6/7 6:28:41

Java+AI 的终极结合!JBoltAI 框架助力企业快速落地 AI 应用

在人工智能重塑各行各业的当下&#xff0c;Java 作为企业级系统的主流技术栈&#xff0c;如何与 AI 能力深度融合&#xff0c;成为众多技术团队面临的核心难题&#xff1a;传统 Java 系统架构封闭&#xff0c;AI 接入成本高&#xff1b;团队缺乏成熟的 AI 开发方法论&#xff0…

作者头像 李华
网站建设 2026/6/9 14:25:58

Linly-Talker与Stable Diffusion联动:自定义形象生成全流程

Linly-Talker与Stable Diffusion联动&#xff1a;自定义形象生成全流程 在虚拟主播24小时不间断带货、AI教师精准讲解知识点、数字客服秒回千条咨询的今天&#xff0c;我们正悄然进入一个“非人类但拟人”的交互时代。数字人不再只是科技展上的概念演示&#xff0c;而是逐步渗透…

作者头像 李华