温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

jquery插件编写简单总结

发布时间:2020-05-31 08:38:06 来源:网络 阅读:230 作者:歆冉 栏目:web开发

jquery插件开发一般有两种方法:

1 通过$.extend()来扩展,写成jQuery.extend()也可以的

2 通过$.fn.extend()来进行扩展,也可以写成jQuery.fn.extend()

第一种方法,相当于在$身上添加了一个全局函数,如果和后台java、c#类比的话,就是相当于在

$或jQuey这个类上添加了一个静态的方法(函数)

那怎么写?

jquery插件编写简单总结

把通过第一种方法扩展的插件写在这个common.js文件里,然后在index.html页面去测试

代码:

jquery插件编写简单总结

非常简单的一行代码

然后看index.html页面调用

jquery插件编写简单总结

然后看控制台输出:

jquery插件编写简单总结

一切都是妥妥的,没毛病,而且其他页面如果引用了,都能使用这个方法。

但是如果需要定义多个全局的函数,通常我们用面向对象的思想来编写。

例如:

jquery插件编写简单总结

将所有的成员都挂在一个对象上,或者说是放在一个命令空间里。这样做的好处就是,不用定义太多的外部变量,避免引起冲突。

调用:

jquery插件编写简单总结

调用的话就是: $.对象名.成员。

结果:

jquery插件编写简单总结

当然我们也可以用jQuery提供给我们用于扩展用的行数extend()

例如:

jquery插件编写简单总结

调用:

jquery插件编写简单总结

结果:

jquery插件编写简单总结

前面的这些都属于第一种方法的范畴,本质就是在$上添加全局函数就可以了。

再看第二种方式$.fn.extend(),这种方式相当于给$的每一个实例对象添加方法(函数)

首先我们要知道fn是个什么鬼,查看jQuery源代码,会发现这样的一行代码:

jquery插件编写简单总结

说明我们就是在原型上去做的扩展。

例如:

jquery插件编写简单总结

注意:index是对应的索引,ele对应的是每一个dom元素对象

最后一样的return是用于支持链式调用的。

调用:

jquery插件编写简单总结

最后的效果:

jquery插件编写简单总结

如果要扩展多个方法,这个时候就需要这样写了

jquery插件编写简单总结

显然比较麻烦!

还是一样可以使用jQuery提供给我们的方法(函数)$.fn.extend()

如果要扩展多个就可以这样写了

jquery插件编写简单总结

调用:

jquery插件编写简单总结

能够链式操作。

效果如图所示:

jquery插件编写简单总结

总结:

jQuey插件编写的两种方式:

1 $.extend();     // 在全局上添加函数 相当于静态方法(类比C#)

2 $.fn.extend();    // 相当于给jquey对象添加   相当于实例方法(类比C#)

再补充一点:

jquery插件编写简单总结

这个外面的this和里面的这个this不是同一个对象

查看其结果:

jquery插件编写简单总结

注意里面的每一个this对象都是dom对象




向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI