news 2026/4/23 20:51:43

jQuery UI 小部件(Widget)方法调用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
jQuery UI 小部件(Widget)方法调用

jQuery UI 小部件(Widget)方法调用指南

jQuery UI 的所有小部件(如 Datepicker、Tabs、Dialog、Accordion、Slider 等)都基于Widget Factory构建,因此它们拥有完全统一的 API 模式。学会一种小部件的方法调用方式,就基本掌握了所有小部件。

统一调用模式
$("#element").widgetName("action",[parameters]);
  • widgetName:小部件名称(如datepickertabsdialog)。
  • "action":要执行的操作(字符串)。
    • "option":获取或设置选项。
    • 其他自定义方法(如"open""close""value""destroy"等)。
    • 如果不传 action,默认是初始化。
常见方法调用分类及示例
  1. 初始化小部件

    $("#datepicker").datepicker();// 基本初始化$("#datepicker").datepicker({// 带选项初始化dateFormat:"yy-mm-dd",changeYear:true});
  2. 调用自定义方法(最常用)
    每个小部件都有自己的专属方法。

    小部件常见方法示例代码
    Datepickeropen/close/setDate/getDate$("#datepicker").datepicker("open");
    Dialogopen/close/isOpen$("#dialog").dialog("open");
    Tabsload/select(旧版) /option$("#tabs").tabs("option", "active", 2);
    Accordionactivate$("#accordion").accordion("activate", 1);
    Slidervalue$("#slider").slider("value", 50);
    Progressbarvalue$("#progressbar").progressbar("value", 75);
    Autocompletesearch/close$("#input").autocomplete("search", "abc");
  3. 获取/设置选项(通用方法)
    所有小部件都支持"option"方法。

    // 获取单个选项值varcurrentValue=$("#slider").slider("option","value");// 设置单个选项$("#slider").slider("option","value",80);// 设置多个选项(对象形式)$("#datepicker").datepicker("option",{dateFormat:"dd/mm/yy",changeMonth:true});// 动态改变禁用状态$("#dialog").dialog("option","disabled",true);
  4. 销毁小部件(恢复原 DOM)

    $("#datepicker").datepicker("destroy");// 移除所有添加的类、事件、DOM 修改
  5. 启用 / 禁用小部件
    大多数小部件支持enabledisable方法。

    $("#button").button("disable");$("#button").button("enable");
完整示例:Dialog 小部件的常见方法调用
<divid="myDialog"title="提示">这是一个对话框。</div><buttonid="openBtn">打开</button><buttonid="closeBtn">关闭</button><script>$(function(){// 初始化$("#myDialog").dialog({autoOpen:false,// 不自动打开modal:true,buttons:{"确定":function(){$(this).dialog("close");}}});// 打开$("#openBtn").click(function(){$("#myDialog").dialog("open");});// 关闭$("#closeBtn").click(function(){$("#myDialog").dialog("close");});// 检查是否打开if($("#myDialog").dialog("instance")&&$("#myDialog").dialog("option","modal")){console.log("当前是模态对话框");}// 动态修改标题$("#myDialog").dialog("option","title","新标题");// 销毁(彻底移除小部件)// $("#myDialog").dialog("destroy");});</script>
如何查看某个小部件支持的方法?
  • 官方 API 文档:https://api.jqueryui.com/
    • Datepicker:https://api.jqueryui.com/datepicker/
    • Dialog:https://api.jqueryui.com/dialog/
    • Tabs:https://api.jqueryui.com/tabs/
  • 每个文档页面都会列出:
    • Methods:所有可调用的方法(如opencloseoptiondestroy)。
    • Events:可绑定的事件(如createchangeselect)。
小贴士
  • 方法调用必须在小部件初始化之后进行。
  • 如果元素上尚未初始化小部件,直接调用方法会自动初始化(但不推荐)。
  • 使用$("#elem").data("ui-widgetName")可以访问内部实例(高级用法)。

掌握了这个统一的调用模式,你就可以轻松操作 jQuery UI 的所有小部件了!

如果您想了解某个具体小部件(如 Autocomplete、Menu、Spinner)的所有方法列表和示例,请告诉我,我可以提供详细说明!

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

系统架构设计师实战:从零构建高可用电商平台

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 设计一个高可用电商平台的系统架构&#xff0c;包括前端、后端、数据库、缓存、消息队列等组件。要求支持每秒10万级并发&#xff0c;99.99%的可用性&#xff0c;并考虑容灾备份方案…

作者头像 李华
网站建设 2026/4/23 9:59:48

AI如何优化嵌入式开发?IAR与快马平台结合实践

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个基于STM32的智能温控系统项目&#xff0c;使用IAR Embedded Workbench开发环境。要求包含以下功能&#xff1a;1) 通过DS18B20传感器采集温度数据 2) 使用PID算法控制PWM输…

作者头像 李华
网站建设 2026/4/23 7:06:44

ControlNet环境搭建终极避坑指南:从零到精通的实战演练

ControlNet环境搭建终极避坑指南&#xff1a;从零到精通的实战演练 【免费下载链接】ControlNet Let us control diffusion models! 项目地址: https://gitcode.com/gh_mirrors/co/ControlNet 您是否在搭建ControlNet环境时遇到过这些问题&#xff1a;依赖冲突导致安装失…

作者头像 李华
网站建设 2026/4/23 8:32:40

零基础入门:用AI开发你的第一个雨滴插件

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个面向新手的雨滴插件生成向导&#xff0c;通过简单的问答形式收集用户需求&#xff08;如插件类型、显示内容、样式偏好等&#xff09;&#xff0c;然后自动生成基础插件代码…

作者头像 李华
网站建设 2026/4/23 8:33:32

电商系统中的INSTR函数实战:5个典型场景解析

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个电商数据分析演示项目&#xff0c;展示INSTR函数的5个实际应用场景&#xff1a;1.商品标题关键词匹配&#xff1b;2.用户搜索词分析&#xff1b;3.物流地址解析&#xff1b…

作者头像 李华
网站建设 2026/4/23 8:36:54

ip2region vs 传统IP库:效率与准确性的全面对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 设计一个性能测试工具&#xff0c;对比ip2region和其他主流IP数据库&#xff08;如GeoIP&#xff09;的查询速度和准确性。功能包括&#xff1a;1. 批量IP查询测试&#xff1b;2. 查…

作者头像 李华