前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >一个jQuery插件框架示例 by FungLeo

一个jQuery插件框架示例 by FungLeo

作者头像
FungLeo
发布于 2022-11-28 00:51:13
发布于 2022-11-28 00:51:13
33000
代码可运行
举报
运行总次数:0
代码可运行

当我们写了一段有价值的 jQuery 代码的时候,是很希望能够封装成一个 jQuery 插件的。但是如何做呢?其实我也不甚明了。只是很早的时候朋友帮忙写了一个 jQuery 插件框架,然后我就不断套用了。

今天拿出来与大家分享。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/*******************************************************************
 * @authors FengCms 
 * @web     http://www.fengcms.com
 * @email   web@fengcms.com
 * @date    2015年9月4日
 * @version Beta 1.0
 * @copy    Copyright © 2013-2018 Powered by DiFang Web Studio  
 *******************************************************************/
(function($) {
    // 下面 FengFocus 是插件的名字,可以任意命名
    $.fn.FengFocus = function(F) {
        F = $.extend({

            // 这里是参数设置,根据需要随便命名
            defaultIndex: 0,
            trigger: "click",
            showtime: 3000,
            showWay: "slow"
            // 这里就是参数结束,注意,最后一个参数后面不能有逗号,否则IE低版本会出错。

        }, F);

        // 仔细看这个 F 这个是必须一致的。
        // 将插件赋值设置为变量(没必要这么做,但是我习惯这样)

        var defaultIndex = F.defaultIndex,
            showWay = F.showWay,
            trigger = F.trigger,
            showtime = F.showtime;

        // 将作用DOM元素赋值为 Obj 然后下面所有的元素,都以Obj 为根进行查询,确保插件不会影响到其他地方。

        var Obj = $(this);

        /* 你的插件代码开始 */
        // 在这里,随便写啦
        /* 你的插件代码结束 */
    }
})(jQuery);

写 jQuery 插件,一定要注意的是,所有的查询必须以 Obj 也就是 $(this) 这个为根进行查询,而不能随便用什么ID来进行查询,否则非常容易产生兼容性的问题。

在 Html 中,是这样滴

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$(function(){
    // 下面的ID,是插件作用于啥,而后面的 FengFocus 就是插件名字
    $("#FengFocus").FengFocus({
        // 下面就是设置参数
        defaultIndex    : 1,
        trigger         : "mouseover",
        showtime        : 3000,
        showWay         : "down"
        // 参数结束,最后一个参数后面不能有逗号
    });
});

好啦,这就是一个 jQuery 插件的框架啦!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-09-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
jQuery 选项卡插件 FengTab by FungLeo
好无聊啊,权当练手,写了一个选项卡插件 Html 结构 <h2>Demo 1</h2> <div id="FengTab" class="FengTab"> <ul class="tab"> <li>Title 1</li> <li>Title 2</li> <li>Title 3</li> <li>Title 4</li> </ul> <div c
FungLeo
2022/11/28
1.5K0
FengFocus 焦点图插件(昨天写了博客,今天封装了)
自从开始学习 jQuery 我就深深的被它给吸引了。虽然年岁有点大了。但是止不住想要学习的冲动。
FungLeo
2022/11/28
6290
JavaScript学习总结(五)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用,
张果
2018/01/04
3K0
JavaScript学习总结(五)——jQuery插件开发与发布
jQuery (二)
还可以使用三个值,第一值为事件,第二个值为Event对象的data属性,在调用最后一个处理函数的时候,会将第二个值作为对象的data属性,这样即可避免使用闭包操作
mySoul
2018/08/24
9.8K0
jQuery插件开发全解析
jQuery插件的开发包括两种: 一种是类级别的插件开发,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法。jQuery的全局函数就是属于jQuery命名空间的函数,另一种是对象级别的插件开发,即给jQuery对象添加方法。下面就两种函数的开发做详细的说明。 1、类级别的插件开发 类级别的插件开发最直接的理解就是给jQuery类添加类方法,可以理解为添加静态方法。典型的例子就是$.AJAX()这个函数,将函数定义于jQuery的命名空间中。关于类级别的插件开发可以采用如下几种形式进行扩展
前朝楚水
2018/04/02
1.2K0
jquery插件与扩展
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统。这好比大公司们争相做平台一样,得平台者得天下。苹果,微软,谷歌等巨头,都有各自的平台及生态圈。
诺浅
2020/08/21
2.6K0
教你开发jQuery插件(转) 教你开发jQuery插件(转)
原文:http://www.cnblogs.com/Wayou/p/jquery_plugin_tutorial.html
用户1518699
2018/09/12
3.9K0
教你开发jQuery插件(转)
		教你开发jQuery插件(转)
「jQuery」基础 - 03
请注意,本文编写于 2071 天前,最后修改于 173 天前,其中某些信息可能已经过时。
曼亚灿
2023/05/17
3.1K0
「jQuery」基础 - 03
如何编写自己的jQuery插件?
对于那些不知道的人来说,jQuery是一个JavaScript库,它包含了许多特性,非常小而且速度很快。它还包括一个易于使用的API,在所有浏览器上都是兼容的,并且可以很容易的进行HTML遍历、动画、DOM操作和事件处理。它不仅可扩展,而且经久耐用。因此,客户端脚本自开发以来变得容易得多。
liuxuewen
2018/09/12
1.8K0
jQuery
jQuery就是为了更方便快速操作DOM,里面封装了很多方法,后续用jQuery对象调用这些方法即可。
roydonGuo
2022/11/02
21.6K0
jQuery
杨老师课堂之Jquery的筛选,事件,效果,Ajax,javascript跨域)
D.closest()获得D所有父元素,含自己(D、B、A)与 D.parents() 对比
杨校
2018/12/06
8.8K0
前端成神之路-03_jQuery
​ 因为普通注册事件方法的不足,jQuery又创建了多个新的事件绑定方法bind() / live() / delegate() / on()等,其中最好用的是: on()
海仔
2021/01/13
3.2K0
Jquery 使用技巧总结
随着WEB2.0及ajax思想在互联网上的快速发展传播,陆续出现了一些优秀的Js框架,其中比较著名的有Prototype、YUI、jQuery、mootools、Bindows以及国内的JSVM框架等,通过将这些JS框架应用到我们的项目中能够使程序员从设计和书写繁杂的JS应用中解脱出来,将关注点转向功能需求而非实现细节上,从而提高项目的开发速度。
Isaac Zhang
2019/09/10
3.2K0
jQuery
jQuery本质上就是一个外部的js文件(jQuery.js),该文件中封装了很多js代码,实现了很多功能。并且jQuery有非常丰富的插件,大多数功能都有相应的插件解决方案。jQuery的宗旨是write less, do more。 (写的更少,做的更多)。
宋先生
2019/07/18
4.7K0
JavaWeb18-jquery学习笔记(Java全栈开发)
jquery一.筛选 筛选与之前的选择器雷同,筛选提供的都是函数. 1. 过滤 eq(index|-index):获取指定索引的元素.如果是正数,索引从0开始;若是负数,倒着数从1开始. first():第一个 last():最后一个 hasClass(...):判断元素是否含有特定的样式 filter(...):筛选出与指定表达式匹配的元素集合 is(...):判断元素是否符合指定的选择器 has(...):含有特定后代的元素 not(...):删除与指定表达式匹配的元素 slice(start
Java帮帮
2018/03/19
7.1K0
JavaWeb18-jquery学习笔记(Java全栈开发)
jQuery学习笔记
jQuery大部分功能需要根据文档的DOM模型来工作,首先需要正确地解析到整个文档的DOM模型结构。使用jQuery需要在整个文档被浏览器完全加载后才开始进行。
wangxl
2018/07/27
3.7K0
前端(四)-jQuery
$(this)就是将这个dom对象转换成jquery对象,就可以对这个对象进行操作;
化羽羽
2022/10/28
8.9K0
jQuery
onload 事件是等页面文档、外部的 js 文件、css文件、图片加载完毕才执行内部代码。
小丞同学
2021/08/16
9.1K0
jquery学习
<1> jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team。
菲宇
2019/06/13
2.3K0
Python全栈之jQuery笔记
jQuery runnoob网址: http://www.runoob.com/jquery/jquery-tutorial.html jQuery API手册: http://www.runoob.com/manual/jquery/ jQuery笔记 笔记来源于: 传智播客的黑马程序员视频笔记. 菜鸟教程:http://www.runoob.com/ 自己的查询与整理. JS的不完美地方: 1. 代码比较麻烦,给多个元素添加事件需要遍历,可能还需要进行嵌套.
py3study
2020/01/19
5.8K0
相关推荐
jQuery 选项卡插件 FengTab by FungLeo
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验