`

二十五、插件的定义

 
阅读更多

插件命名:
使用jquery.命名空间.js

$符号的冲突问题:
(function($){
    $.say = function(hello) {
        alert("helllo "+hello);
    }
})(jQuery)//传入jQuery作为参数


复杂插件的参数问题:
(function($){
   
    /**
     * 如果有一个插件,参数很多,而且很多参数并不是必须的
     * 如此在调用的时候就会非常麻烦
     * $.complex("aa");
     * $.complex("aa",null,null,null,null,null,null,"abc");
     * $.complex("aa","abc")
     */
    // $.complex = function(p1,a2,a3,a4,a5,a6,a7,a8) {
//        
    // }
     /**
      * 插件的参数的解决方法一般是通过options来定义
      * options中一般使用json来定义,这个时候就可以灵活来确定参数个数
      */
       $.complex = function(p1,options,p2) {
           /**
            * 在代码中,通过extend方法来完成覆盖
            */
               var settings = $.extend({
                   a2:"ok",
                   a3:"hello",
                   a4:"你好"
               },options||{});
               alert(p1+p2);
               alert(settings.a2+","+settings.a3+","+settings.a4);
       }
})(jQuery)//传入jQuery作为参数

分享到:
评论

相关推荐

    文字编辑属性定义转普通文字cad插件

    cad插件,用于属性文字转换成普通文字,快捷命令tag2txt,使用方便

    eclipse3.4解压版带jbpm流程定义插件

    在提供的压缩包"eclipse3.4解压版带jbpm流程定义插件"中,用户无需安装,仅需解压即可开始使用,这极大地简化了部署过程。这意味着Eclipse 3.4已经被配置好,集成了jbpm的相关库和插件,用户可以直接打开Eclipse进行...

    Chrome插件开发.pdf

    它也是插件的入口点,用于定义插件的行为。 * Browser Action:是插件在浏览器工具栏中的图标,用户可以点击该图标来激活插件。 * Background Page:是插件的主要逻辑部分,用于处理插件的业务逻辑。 * Content ...

    Abaqus CAE 2018 的插件,用于定义 3D 几何的周期性边界条件_Python

    Abaqus CAE 2018 的插件,用于定义 3D 几何的周期性边界条件 周期性边界条件可用于使用其晶胞对无限或半无限域进行建模。。 总之,通过在每个节点之间应用相关约束,可以在 Abaqus 中添加两个曲面之间的周期性边界...

    AndroidStudio自定义Gradle插件

    2. 在项目中定义一个类,该类实现`org.gradle.api.Plugin<Extension>`接口,其中`Extension`是你为插件定义的配置类。 3. 在`apply`方法中实现插件的核心功能。 4. 配置`build.gradle`文件,声明插件的GAV(Group, ...

    qt 插件的简单使用,插件创建,和使用

    1. **定义插件接口**:这是插件的核心部分,它定义了插件必须实现的公共API。通常,这个接口会被声明在一个头文件中,用纯虚类表示。 2. **实现插件**:根据定义的接口,编写插件的具体实现。这通常包括一个类,该类...

    cohesive-3d_cohesive插件_ABAQUS插件_ABAQUS插件_python_ABAQUS_

    标题提到的"cohesive-3d_cohesive插件_ABAQUS插件_ABAQUS插件_python_ABAQUS_"暗示我们关注的是一个专门针对3D模型的Cohesive插件,该插件可能是用Python编程语言编写的,并且与ABAQUS紧密集成。描述中的"abaqus中3...

    c# 插件机制的实现(如何通过插件的机制,实现动态功能扩展)

    1. **定义接口**:首先,需要为插件定义一个公共接口,这个接口声明了插件必须实现的功能。例如,我们可以定义一个名为`IPlugin`的接口,包含需要插件实现的方法和属性。 ```csharp public interface IPlugin { ...

    jQuery插件开发的五种形态小结

    本知识点将详细介绍如何开发jQuery插件,并总结五种常见的形态。 ### 一、基础形态 - 功能函数包装 基础形态的插件是将JavaScript函数封装起来,使其能够在jQuery对象上操作。例如,创建一个背景颜色变换插件,它...

    金蝶云苍穹KDE脚本插件开发指南

    二、插件开发指南 1.2.1 确定应用场景,选择插件基类 在开发插件之前,需要确定应用场景和选择合适的插件基类。插件基类定义了插件的基本行为和功能。 1.2.2 确定事件源与控件 在开发插件时,需要确定事件源和...

    .net 插件机制的实现

    1. **接口定义**:为了确保插件与主应用程序之间的交互,通常会定义一组公共接口。这些接口定义了插件必须实现的方法和属性,以便主程序可以调用它们。例如,一个名为`IPlugin`的接口可能包含`Start`和`Stop`方法,...

    Qt插件框架 PluginFrame

    首先,我们需要定义一个插件接口,这个接口通常包含一系列纯虚函数,这些函数定义了插件的核心功能。例如,我们可以创建一个名为`IPlugin`的接口,包含`init`、`run`和`shutdown`等方法,这些方法将在插件被加载时被...

    最新GOM插件API

    首先,插件开发涉及的主要概念有接口定义、动态链接库(DLL)和加载机制。GOM插件API通常会提供一系列公开的接口,开发者需要按照这些接口编写自己的插件代码。这些代码会被编译成DLL,然后在运行时被GOM系统加载并...

    QtCreator插件开发

    一个插件的定义通常包括了诸如插件名称、版本、兼容版本、版权信息、许可证、分类以及插件描述等元数据。这些元数据被定义在 PluginSpec 标签内。例如,一个版本控制插件可能被定义为: ```xml <vendor>Somebody ...

    浏览器调用VLC插件

    在上面的代码中,`<object>`标签用于定义VLC插件的实例,`type`属性指定了插件的类型为`application/x-vlc-plugin`。`width`和`height`属性指定了插件的宽度和高度。`<param>`标签用于指定插件的参数,例如自动播放...

    c#写的插件技术 c#写的插件技术

    二、插件加载过程 1. 发现插件:主程序可以通过指定目录或搜索路径来查找可用的插件DLL。这通常通过遍历目录,使用`Assembly.LoadFrom()`方法加载DLL实现。 2. 检查兼容性:加载DLL后,需要检查其是否实现了预期的...

    IDA插件编写中文教程

    本教程将深入探讨如何编写IDA插件,帮助你更高效地利用IDA进行二进制分析。以下是你需要知道的关键知识点: 1. **IDA基础知识**:在开始编写插件之前,你需要对IDA的基本功能和界面有深入了解。这包括如何浏览和...

    supermap 做插件开发

    SuperMap 是一个功能强大的 GIS 平台,提供了二次开发的能力,允许开发者创建自己的插件来扩展其功能。本文将详细介绍如何使用 SuperMap 进行插件开发,包括插件的创建、配置、开发和测试等方面。 创建插件 首先,...

    DZ论坛视频插件酷播视频插件

    Discuz论坛视频插件酷播视频插件,在DISCUZ中快速实现内嵌视频的播放功能,Discuz酷播视频插件支持DiscuzX3.2/DiscuzX1.5,以自己定义的视频插件形式直接添加到dz论坛的编码中,已实现跨平台播放,支持PC,安卓,...

    C#插件式框架开发完整Demo

    1. **插件接口定义**:在C#中,插件通常通过接口来定义其行为。开发者会定义一组公共接口,这些接口描述了插件必须实现的功能。例如,`IPlugin`接口可能包含`Execute()`方法,供插件执行其特定任务。 2. **动态加载...

Global site tag (gtag.js) - Google Analytics