专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-963-0016
微信咨询
|
联系我们
扫二维码关注公众号
网站首页
网站建设
短视频
网站推广
网站模板
客户案例
资讯动态
关于我们
网站首页
网站建设
短视频
网站推广
网站模板
客户案例
资讯动态
关于我们
位置:
网站建设
>
技术支持
> 如何封装jQuery插件
如何封装jQuery插件
来源:网络整理 时间:2023/2/14 0:57:52 共
3684
浏览
大神请忽略此文章,本文适用于新手。
很多刚刚开始接触js的网友可能会觉得js很神奇,如果没有一些编程基础可能觉得插件是可远观而不可触摸的。我也是这样子的,没有人教只能依靠自己学习没有讲解,关键之处完全靠自己摸索。
我最开始想封装一个自己的插件的时候花了一个星期的时间阅读了大量的网友提供的插件封装方法,有可能是太深奥了吧也可能是没有说得太明白,总是会出现各种问题。 今天乘着刚好有一个项目的需求,我把模块拿出来简单的封装成了一个插件,功能简单容易学懂。
第一步:理解为什么要封装插件
个人总结一下:
1、代码可以复用
2、便于维护和管理
3、提升自身的能力
4、避免各个相同功能组件的干扰,以及一些作用域会相互影响的问题
第二步:理解函数
学习过js的网友对于函数应该不会默认,举个例子:
function alertMsg(){
alert('hello word!');
}
1
2
3
这是一个简单的函数,需要使用的时候只需使用以下代码激活即可:
<script>
alertMsg();
</script>
那么,如果需要传递参数呢? 那改成下面这样子:
function alertMsg(obj){
alert(obj);
}
alertMsg('hello world!');
一个功能模块其实就是n个函数之间的作用,而一个插件就是把n个功能模块安装一定的规范整合可以在多处环境下使用且互不影响。
第三步:理解插件封装
jQUery的标准封装方式
;(function ($) {
// 插件内容 ...
})(jQuery);
上面就是一个简单插件的写法。 封装jQuery插要依靠"$.fn"方法,该方法可以向jQuery添加新的方法。
举个例子:
$.fn.alertMsg = function () {
alert('我是一个插件');
}
上面是一个插件,调用方法:
$("#test").alertMsg ();
明白上述内容之后,你已经了解怎么封装和调用了。
第四步:向外暴露参数
那我们常见的插件都是可以自己配置参数的,这如何实现呢?
这里需要"$.extend();"方法。
$.extend(object);为扩展jQuery类本身.为类添加新的方法。
$.fn.extend(object);给jQuery对象添加方法。
举个例子:
$(function ($) {
$.fn.alertMsg = function (options) {
var defaults = {
Event : "click",
msg : "我是一个插件!"
}
var settings = $.extend(defaults, options);
var $this = $(this);
$this.on(options.Event, function (e) {
alert(options.msg);
});
}
});
调用方法:
$(function () {
$("#btn").alertMsg(); //设置不传参数的用法,插件执行时会启动默认参数
});
//传递参数则改成这样子:
$(function () {
$("#btn").alertMsg({
Event : "click",
msg : “hello world!"
});
});
如果上述内容都已经理解透彻,那么你已经知道如果来分装属于你自己的jQuery插件了。
本文前段提及了本来的来由,下面附上地址供大家参考:
https://github.com/obear997/txtscroll
这是一个简单的能支持响应式的文本滚动插件,有兴趣的网友可以收藏和完善其他功能,有更好的想法和代码改进建议,非常乐意接受。
版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
相关主题:
赌博网站的建设
长春专业网站建设
做网站建设销售
厦门网站建设美丽
填报志愿网站建设
创新的网站建设
优酷网站建设
网站建设策略运营
网站建设案例教程
迅雷下载网站建设
·上一条:
C# 消息队列
|
·下一条:
jQuery 插件封装的方法
同类资讯
C# 消息队列
c#进阶(4)—— Redis 用于消息队列的存储
秒杀活动,模拟SeckillPro
基于Redis的Stream类型的完美消息队列解决方案
c#操作Redis的5种基本类型汇总
将微信和支付宝支付的个二维码合二为一
C# 获取Header中的token值
简单一码付:将支付宝和微信的收款二维码合并为一个二维码
C#实现微信H5支付问题
C#版微信公众号支付|微信H5支付|微信扫码支付问题汇总及解决方案总结
C# Redis安装 使用教程
c# redis密码验证笔记
c# - Xamarin形式的隔离进程的后台服务
xamarin.android App在后台运行不退出
在 Xamarin.Android 中使用 Notification.B
当应用程序关闭时推送通知
Xamarin.Forms学习系列之Android集成极光推送
Android平台-极光服务 SDK 一键接入指南
如何在Xamarin.Forms中创建永无止境的后台服务?(How to
利用雷电模拟器打造一个安卓电视盒子
资讯动态
公司新闻
互联网资讯
电商资讯
优化推广
技术支持
关于我们
公司简介
企业文化
服务项目
公司新闻
服务项目
网站建设
网站推广
品牌策划
移动应用
服务支持
在线咨询
服务流程
产品报价
售后服务
联系我们
代理加盟
付款方式
在线留言
联系方式
联系方式
电话:400-963-0016
邮箱:sales@itwy.com
QQ:250211130
微信:18520775521
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有
粤ICP备16019765号
广州京杭网络科技有限公司 版权所有
18520775521
QQ洽谈
sales@itwy.com