jQuery 插件-(初体验一)
2015-07-11 12:10
645 查看
1.jquery有2个扩展方法:
jquery.fn.extend=jquery.prototype.extend
jquery.extend
(两者的区别放在后面文章说)
2.具体实例结构:
3.插件中涉及到的一些概念与注意事项放在后面文章说
jquery.fn.extend=jquery.prototype.extend
jquery.extend
(两者的区别放在后面文章说)
2.具体实例结构:
//创建及时作用域 (function ($) { // 通过字面量创造一个对象,存储我们需要的共有方法 var methods = { inint: function (options) { //返回“this”(函数each()的返回值也是this),以便进行链式调用。 return this.each(function () { // 为每个独立的元素创建一个jQuery对象 var $this = $(this); //设置默认值 var defaults = { proName: 'zqz' }; if (typeof (options) == 'undefined') { settings = $.extend({}, defaults); } else { var settings = { proName: options.proName, Events: handlers.zqzClick($this, options) }; settings = $.extend({}, defaults, settings); } }) } }; //事件 var handlers = { zqzClick: function ($this, options) { $this.bind('click', options.zqzClick); } }; //向jQuery中被保护的“fn”命名空间中添加你的插件代码,用“zqz”作为插件的函数名称 $.fn.zqz = function () { // 检验方法是否存在 var method = arguments[0]; if (methods[method]) { method = methods[method]; arguments = Array.prototype.slice.call(arguments, 1); // 如果方法不存在,检验对象是否为一个对象(JSON对象)或者method方法没有被传入 } else if (typeof (method) == 'object' || !method) { method = methods.inint; } else { $.error('asdasd'); return this; } return method.apply(this, arguments); } })(jQuery) //调用 $(function () { //$('#blanckjh').zqz(); $('#blanckjh').zqz({ 'proName': 'wdx', 'zqzClick': function () { alert("zqz"); } }); })
3.插件中涉及到的一些概念与注意事项放在后面文章说
相关文章推荐
- JQuery简介及语法学习笔记
- 关于jquery中ajaxSubmit总是error的问题
- jquery Validate
- 【HTML/JS】利用JQuery的load函数动态加载其它页面的内容的实现代码
- jquery 创建遮盖层 示例代码
- 移动开发必备!15款jQuery Mobile插件
- Jquery 对新插入的节点 绑定Click事件失效
- JQuery在Ajax的Post提交中国乱码的解决方案
- jquery ui 笔记
- jQuery缓存操作-cache数据
- jQuery第二弹强大的选择器
- jquery ui动态切换主题的一种实现方式
- jquery实现图片上传之前预览的方法
- JQuery 设置元素的高度和宽度相等
- JQuery入门——进度条
- jQuery源码之ready()事件
- jQuery.form Ajax无刷新上传错误 (jQuery.handleError is not a function) 解决方案
- jquery 完成checkbox的全选功能
- jquery 对 Json 的各种遍历
- jquery.ajax提交多值(数组)