博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jQuery ui widget和jQuery plugin的实现原理简单比较
阅读量:6435 次
发布时间:2019-06-23

本文共 956 字,大约阅读时间需要 3 分钟。

一、创建

1、  jQuery plugin

(function($){

$.fn.MyPlugin=function(){

  //js代码

}

})(jQuery)

       为了与页面上其他代码友好相处,将plugin定义在一个闭包里,MyPlugin是plugin的名字。调用方式:$(‘选择器’).MyPlugin();

2、  jquery ui widget

(function($){

  $.widget(‘ui.mywidget’,{

options:{

  //默认的配置参数

},

//方法的定义

})

})(jQurry)

同样定义在一个闭包里。Mywidget 为这个widget的名字。调用方式:$(‘选择器’).mywidget();

上述代码只是简单概述,具体实现jQuery官方文档讲得很详细。

 

二、实现原理

创建一个jQuery plugin其实是创建了一个jQuery对象(在这里我把通过$(‘选择器’)的返回值叫做jQuery对象)的方法。看下$()和$.fn 是什么就明白了。

 

通过$.widget 这个Widget Factory 函数创建的一个widget,本质上是通过创建一个类即一个构造函数实现的。

看下 widget 工厂函数的调用,方法:$.widget(name,[,base],prototype)。

name:要创建的widget的名字,包扩命名空间。如:ui.mywidget。

base:为一个父类。新创建的类将继承他的方法。默认为:$.Widget。

Prototype:作为创建的类即构造函数的prototype属性值。

 

再看下widget的调用。

   实例化:通过$(‘选择器’).mywidget(),实例化相应的类,并通过$.data()将实例化后得到的对象存储在对应的$(‘选择器’)中。源码:$.data( this, fullName, new object( options, this ) );

  对象操作: $(‘选择器’).mywidget(方法名,方法的参数); 调用存储在$(‘选择器’)对应对象的方法。注意在对对象操作前必须实例化,否则会报错。

转载于:https://www.cnblogs.com/htmlwall/p/3699404.html

你可能感兴趣的文章
web前端的十种jquery特效及源码下载
查看>>
poj 3414 Pots (bfs+线索)
查看>>
Binary search
查看>>
http://jingyan.baidu.com/article/08b6a591f0fafc14a9092275.html
查看>>
MySQL查询数据表的Auto_Increment(自增id)
查看>>
java多线程系类:JUC集合:01之框架
查看>>
【Linux】 源码安装make命令详解,避免踩坑
查看>>
数据库中间表插入乱序
查看>>
[Python爬虫] 之四:Selenium 抓取微博数据
查看>>
使用OPENROWSET爆破SQL Server密码
查看>>
Mac_安装Homebrew以及Maven
查看>>
eclipse web开发Server配置
查看>>
曹政--互联网搜索老师傅
查看>>
MUI框架开发HTML5手机APP(一)--搭建第一个手机APP(转)
查看>>
linux下使用 du查看某个文件或目录占用磁盘空间的大小
查看>>
[wp7软件]wp7~~各种视频播放器下载大全
查看>>
Java工程师必知之事 —— 如何定义自己的职业路线?
查看>>
代码质量与规范,那些年你欠下的技术债
查看>>
计算机程序的思维逻辑 (19) - 接口的本质
查看>>
CVE-2014-4113漏洞利用过程分析
查看>>