jquery插件格式实例分析


Posted in Javascript onJune 16, 2016

本文实例讲述了jquery插件格式。分享给大家供大家参考,具体如下:

现在打算给公司写一个公共组件,常用的工具很多都是jquery,很多时候一些插件特效也是基于jquery写的,因此工作中难免会遇到要拓展别人写的插件。

下面我简单的描述一下插件的格式:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="jquery-1.6.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
//模拟一个小的插件,方便大家学习
(function($){
  $.fn.huangbiao=function(userSetting){
  //利用jquery的extend方法来拓展插件的配置参数,这个应该暴露给使用用户
    settings = jQuery.extend($.fn.huangbiao.defaultSetting,userSetting);
    function init(){
      alert("在我这里进行初始化");
      myFunction(this);
    }
    function myFunction(obj){
      alert("我是开发者自己封装的函数");
      showSetting();
      privateFunc();
    }
    function showSetting(){
      alert(this.settings.name);
    }
    this.unbind('click').click(init);
    return this;
  }
  //下面这个是闭包的私有函数
  function privateFunc(){
    alert("i am private function!");
  }
  //暴露给用户使用的函数
  $.fn.huangbiao.openFunc=function(obj){
    alert("test");
  }
  /*
    定义暴露给用户的默认值
    这个一定要放在$.fn.huangbiao对象后面,否则脚本会报错的
  */
  $.fn.huangbiao.defaultSetting={
    name:"huangbiao",
    sex:"boy",
    age:24
  };
})($);
function useUndefault(){
  //使用自己配置的参数
  $("#undefault").huangbiao({name:"liumei",sex:"girl",age:24});
}
function useUndefault2(){
alert($.fn.huangbiao.defaultSetting.name);
  $.fn.huangbiao.defaultSetting.name="hanmeimei";
  alert($.fn.huangbiao.defaultSetting.name);
  //使用自己配置的参数
  $("#undefault2").huangbiao();
}
function useDefault(){
  //使用默认的配置参数
  $("#default").huangbiao();
}
function openFunction(){
  $("#default").huangbiao.openFunc();
}
</script>
<title>无标题文档</title>
</head>
<body>
<input type="button" value="useUndefault" id="undefault" onclick="useUndefault();"><br>
<input type="button" value="useUndefault2" id="undefault2" onclick="useUndefault2();"><br>
<input type="button" value="useDefault" id="default" onclick="useDefault();"><br>
<input type="button" value="使用提供给用户的函数" id="openFuncId" onclick="openFunction();"><br>
</body>
</html>

另外,这里再提供一个关于jquery的文档,相信对于大家学习jQuery插件有一定帮助作用!

本站下载: jQuery插件开发.pdf 。

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
jQuery 入门讲解1
Apr 15 Javascript
使用jQuery.fn自定义jQuery翻页插件
Jan 20 Javascript
js setTimeout 参数传递使用介绍
Aug 13 Javascript
javascript bom是什么及bom和dom的区别
Nov 26 Javascript
Adapter适配器模式在JavaScript设计模式编程中的运用分析
May 18 Javascript
深入理解js generator数据类型
Aug 16 Javascript
JS控制HTML元素的显示和隐藏的两种方法
Sep 27 Javascript
javascript代码调试之console.log 用法图文详解
Sep 30 Javascript
JS插件plupload.js实现多图上传并显示进度条
Nov 29 Javascript
前端JS面试中常见的算法问题总结
Dec 23 Javascript
vue使用Element组件时v-for循环里的表单项验证方法
Jun 28 Javascript
vue实现codemirror代码编辑器中的SQL代码格式化功能
Aug 27 Javascript
详解JavaScript对象类型
Jun 16 #Javascript
jQuery on()方法绑定动态元素的点击事件实例代码浅析
Jun 16 #Javascript
jQuery页面元素动态添加后绑定事件丢失方法,非 live
Jun 16 #Javascript
JSON字符串和对象相互转换实例分析
Jun 16 #Javascript
jQuery的层级查找方式分析
Jun 16 #Javascript
jQuery实现响应鼠标事件的图片透明效果【附demo源码下载】
Jun 16 #Javascript
JS中sort函数排序用法实例分析
Jun 16 #Javascript
You might like
国外PHP程序员的13个好习惯小结
2012/02/20 PHP
PHP简单字符串过滤方法示例
2016/09/04 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
2018/06/16 PHP
PHP 观察者模式深入理解与应用分析
2019/09/25 PHP
经常用的图片在容器中的水平垂直居中实例
2007/06/10 Javascript
javascript工具库代码
2012/03/29 Javascript
Jquery性能优化详解
2014/05/15 Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
2014/06/10 Javascript
Node.js异步I/O学习笔记
2014/11/04 Javascript
jQuery多媒体插件jQuery Media Plugin使用详解
2014/12/19 Javascript
JavaScript中的对象序列化介绍
2014/12/30 Javascript
jQuery常用数据处理方法小结
2015/02/20 Javascript
javascript Array 数组常用方法
2015/04/05 Javascript
jQuery实现手机号码输入提示功能实例
2015/04/30 Javascript
js鼠标点击图片切换效果代码分享
2015/08/26 Javascript
js实现可折叠展开的手风琴菜单效果
2015/09/07 Javascript
将JavaScript的jQuery库中表单转化为JSON对象的方法
2015/11/17 Javascript
javascript html实现网页版日历代码
2016/03/08 Javascript
php基于redis处理session的方法
2016/03/14 Javascript
jQuery bt气泡实现悬停显示及移开隐藏功能的方法
2016/07/12 Javascript
xmlplus组件设计系列之列表(4)
2017/04/26 Javascript
Ionic项目中Native Camera的使用方法
2017/06/07 Javascript
jQuery基于Ajax实现读取XML数据功能示例
2018/05/31 jQuery
详解如何探测小程序返回到webview页面
2019/05/14 Javascript
[03:00]《DAC最前线》之欧美新秀VS老将
2015/02/01 DOTA
python统计一个文本中重复行数的方法
2014/11/19 Python
Python实现的视频播放器功能完整示例
2018/02/01 Python
pycharm配置pyqt5-tools开发环境的方法步骤
2019/02/11 Python
Python 实现域名解析为ip的方法
2019/02/14 Python
Pycharm简单使用教程(入门小结)
2019/07/04 Python
python 双循环遍历list 变量判断代码
2020/05/04 Python
全方位了解CSS3的Regions扩展
2015/08/07 HTML / CSS
学校文明单位申报材料
2014/05/06 职场文书
酒店前台辞职书
2015/02/26 职场文书
销售员岗位职责范本
2015/04/11 职场文书
Python中的datetime包与time包包和模块详情
2022/02/28 Python