美文网首页
jquery插件教程

jquery插件教程

作者: myersguo | 来源:发表于2017-01-17 09:39 被阅读28次

基本插件开发

最简单的插件开发就是对$.fn添加新的成员函数。

$.fn.插件名 = function() {
    //插件代码
};

eg:

$.fn.greenify = function () {
    this.css( "color", "green" );
};
$("a").greenify(); // Makes all links green.

注意:插件中的this是jQuery对象的实例。

链式调用(Chaining)

jquery的一大特点是链式调用。更改上面的插件方法:

$.fn.greenify = function () {
    this.css( "color", "green" );
    return this;
};
$( "a" ).greenify().addClass("greenified");

为防止$符号同其他的冲突,可以放到立即执行函数中写:

(function ( $ ) {
 
    $.fn.greenify = function() {
        this.css( "color", "green" );
        return this;
    };
 
}( jQuery ));

另外,** 尽量只使用一次$.fn**

使用.each

如果需要针对每一个DOM元素进行遍历、处理。则可以使用.each 方法:

$.fn.myNewPlugin = function () {
    return this.each (function() {
        //Do something to each element here
    });
};

传递参数

(function ( $ ) {
 
    $.fn.greenify = function( options ) {
 
        // This is the easiest way to have default options.
        var settings = $.extend({
            // These are the defaults.
            color: "#556b2f",
            backgroundColor: "white"
        }, options );
 
        // Greenify the collection based on the settings variable.
        return this.css({
            color: settings.color,
            backgroundColor: settings.backgroundColor
        });
 
    };
 
}( jQuery ));

$( "div" ).greenify({
    color: "orange"
});

//一般定义默认的参数settings,然后使用$.extend({}, defaultOptions, options)来传参。

参数可修改

为了扩展插件,有时候需要直接修改默认参数,来方便插件的调用。

// Plugin definition.
$.fn.hilight = function( options ) {
 
    // Extend our default options with those provided.
    // Note that the first argument to extend is an empty
    // object – this is to keep from overriding our "defaults" object.
    var opts = $.extend( {}, $.fn.hilight.defaults, options );
 
    // Our plugin implementation code goes here.
 
};
 
// Plugin defaults – added as a property on our plugin function.
$.fn.hilight.defaults = {
    foreground: "red",
    background: "yellow"
};
$.fn.hilight.defaults.foreground = "blue";
$( "#myDiv" ).hilight();
$( "#green" ).hilight({
    foreground: "green"
});

方法可修改

另一种扩展插件的方式是将插件的方法暴漏出去。

来自:微信公众账号:myersguo

参考资料

https://learn.jquery.com/plugins/basic-plugin-creation/
http://javascript.ruanyifeng.com/jquery/plugin.html

相关文章

  • 全屏滚动

    jquery.fullPage.js全屏滚动插件教程演示

  • 网址收藏

    基于jquery,bootstrap数据验证插件bootstrapValidator 教程 http://www....

  • 乐学网

    乐学网是一个专门分享jquery插件、ASP.NET源码、jquery特效、Jquery教程、MVC框架、css布...

  • 手把手教你使用Ztree插件

    基于jquery的树插件Ztree作者自己写的教程, 手把手教你使用Ztree插件

  • jQuery插件开发、命名空间

    jQuery 中文在线文档 学习手册 jQuery插件开发精品教程(让你的jQuery更上一个台阶) 教你开发jQ...

  • 07-JQuery插件应用

    本教程主要以Jquery UI为例,简单介绍Jquery插件的使用。 使用JQuery UI提供的基本功能,需要如...

  • jquery插件教程

    基本插件开发 最简单的插件开发就是对$.fn添加新的成员函数。 eg: 注意:插件中的this是jQuery对象的...

  • 西安网站建设需要知道的jQuery文件上传漏洞

    1、jQuery文件上传漏洞 jQuery的框架中存在数千个插件。尽管每个插件的使用方法都有明确的教程,但相当一部...

  • 常用网址

    特效插件网址 jQuery插件库-收集最全最新最好的jQuery插件 jquery特效,jquery插件库,jqu...

  • 本地存储和jqueryUI制作滚动条

    jqueryUI jQueryUI专指由jQuery官方维护的UI方向的插件。官方api其他教程:jQueryUI...

网友评论

      本文标题:jquery插件教程

      本文链接:https://www.haomeiwen.com/subject/rxlmbttx.html