从零开始写一个jquery日历插件(一)

简单来说,jquery插件为扩展jquery原型对象的一个方法。编写jquery插件其实就是给jquery原型添加一个自定义的方法。我们先来看一个最简单的例子:$(“a”).attr(“href”,”http://www.baidu.com“),这里使用jquery选择器,来查找a元素,并返回一个jquery对象。我们就可以通过这个对象来使用jquery中操作dom的内置方法。在此处,这里调用的方法是jquery中内置的attr方法修改a标签中的href属性。其实,通过查看juery源码,我们可以发现jquery.fn = jquery.prototype,也就是说,jquery.fn对象是jquery的原型对象,jQuery的DOM操作方法都在jQuery.fn对象上定义的,然后jQuery对象就可以通过原型继承这些方法。

前面说了很多基本原理,但是其实要开发一个功能简单的jquery插件并不难。虽然jquery插件有各种各样的写法,但其都有一个基本的结构,万变不离其宗。

 基础jquery插件框架
    (function ($) {
         $.fn.extend({
                 //这里写自定义的方法.
                xxxxxx:function({
                    //这里写逻辑
                    。。。。。。。。
                    //返回
                    return this.each(function{})
                })
            })
        })(jQuery);

下面,我们来看这一个框架具体是什么意思,以及为什么要这样写。结构的最外层是个立即执行函数
//立即执行函数

(function ($) {  

})(jquery);

这个立即执行函数的好处是,将所有插件内所有的代码都在匿名函数的局部作用域中运行,不用担心变量名与全局作用域的代码其冲突。并且函数外部无法访问函数内部的公共变量和命名控件,有一定的封装性。

并且,这个立即执行函数将jquery对象作为参数传入函数内部,这样为我们就可以在函数内部使用jquery对象,给jquery对象添加自定义的方法了

//给jquery对象添加自定义的方法
    $.fn.extend({
                 //这里写自定义的方法.
                xxxxxx:function({
                    //这里写逻辑
                    。。。。。。。。
                    //返回
                    return this.each(function{})
                })
            })

注意,方法最后返回this.each(function{})即返回jquery对象,这样该插件就可以链式调用了。

至此,就query插件的基本结构已经讲完,下一节就正式开始日历插件的开发了。

这里先放一个最后的效果图。
这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值