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——表单应用范例
Feb 20 Javascript
asp.net下利用js实现返回上一页的实现方法小集
Nov 24 Javascript
使用dynatrace-ajax跟踪JavaScript的性能
Apr 12 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
Sep 26 Javascript
jQuery获取cookie值及删除cookie用法实例
Apr 15 Javascript
jQuery Checkbox 全选 反选的简单实例
Nov 29 Javascript
利用jquery实现实时更新歌词的方法
Jan 06 Javascript
JS在浏览器中解析Base64编码图像
Feb 09 Javascript
解决微信小程序中转换时间格式IOS不兼容的问题
Feb 15 Javascript
jquery实现垂直手风琴菜单
Mar 04 jQuery
记一次react前端项目打包优化的方法
Mar 30 Javascript
vue 防止页面加载时看到花括号的解决操作
Nov 09 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实现12306余票查询、价格查询示例
2014/04/17 PHP
php的dl函数用法实例
2014/11/06 PHP
大家都应该掌握的PHP关联数组使用技巧
2015/12/25 PHP
PHP中常用的数组操作方法笔记整理
2016/05/16 PHP
Smarty日期时间操作方法示例
2016/11/15 PHP
php读取出一个文件夹及其子文件夹下所有文件的方法示例
2017/06/15 PHP
js 浮动层菜单收藏
2009/01/16 Javascript
nodejs中简单实现Javascript Promise机制的实例
2014/12/06 NodeJs
jQuery异步获取json数据方法汇总
2014/12/22 Javascript
微信小程序开发之视频播放器 Video 弹幕 弹幕颜色自定义实例
2016/12/08 Javascript
Bootstrap 模态框实例插件案例分析
2016/12/28 Javascript
全面总结Javascript对数组对象的各种操作
2017/01/22 Javascript
给Easyui-Datebox设置隐藏或者不可用的解决方法
2017/05/26 Javascript
详解webpack解惑:require的五种用法
2017/06/09 Javascript
nodejs中art-template模板语法的引入及冲突解决方案
2017/11/07 NodeJs
Webpack的dll功能使用
2018/06/28 Javascript
VUE2.0 ElementUI2.0表格el-table自适应高度的实现方法
2018/11/28 Javascript
Jquery的Ajax技术使用方法
2019/01/21 jQuery
JS删除对象中某一属性案例详解
2020/09/08 Javascript
在树莓派2或树莓派B+上安装Python和OpenCV的教程
2015/03/30 Python
Python实现二分查找算法实例
2015/05/26 Python
Python实现压缩和解压缩ZIP文件的方法分析
2017/09/28 Python
python实现自动化上线脚本的示例
2019/07/01 Python
numpy ndarray 取出满足特定条件的某些行实例
2019/12/05 Python
Python找出列表中出现次数最多的元素三种方式
2020/02/24 Python
如何以Winsows Service方式运行JupyterLab
2020/08/30 Python
基于python模拟bfs和dfs代码实例
2020/11/19 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
Java中采用什么结构来捕获、处理异常?各子句的顺序、功能如何
2013/10/07 面试题
三月法制宣传月活动总结
2014/07/03 职场文书
525心理活动总结
2014/07/04 职场文书
2014年会计工作总结
2014/11/27 职场文书
故意伤害罪辩护词
2015/05/21 职场文书
二审答辩状格式
2015/05/22 职场文书
Mysql systemctl start mysqld报错的问题解决
2021/06/03 MySQL
Python实现提取PDF简历信息并存入Excel
2022/04/02 Python