jQuery下扩展插件和拓展函数的写法(匿名函数使用的典型例子)

我选择了jQuery,最主要是它的思想“write less,do more",因为我是一个挑剔的人,以前写过的代码,会时不时翻出来,看看有没有可以精简,优化的地方。一来是对不断学习的推动,二来可以将新的思想,技术应用到里面去。
对于jQuery插件的写法,以前就有介绍过,网上也有很多例子。 这里简要地进行些写法,主要是简写的说明,见下列代码:
<script type="text/javascript" src="jquery-1.4.2.js"></script>


代码如下:

<script type="text/javascript">
//jQuery插件的写法(需要传入操作对象)
;(function($)
{
//PI_TestPlugIn为插件名称,也是插件的操作对象
//为了不会与其它插件名重复,这里我使用PlugIn的缩写PI_来定义插件对象前缀
$.fn.PI_TestPlugIn=
{
//该插件的基本信息
Info:{
Name: "TestPlugIn",
Ver: "1.0.0.0",
Corp: "Lzhdim",
Author: "lzhdim",
Date: "2010-01-01 08:00:00",
Copyright: "Copyright @ 2000-2010 Lzhdim Technology Software All Rights Reserved",
License: "GPL"
},
//具有参数的函数对象,这里参数是一个对象,具有属性
FunctionWithParams:function(paramObj)
{
//使用参数,是否使用默认值
var params = paramObj ? paramObj : new function(){
param1= "1";
param2= "2";
};
return this.Info.Name + ".FunctionWithParamObject";
},
//具有参数的函数对象,这里参数是一个变量
FunctionWithParam:function(varparam)
{
//使用参数,是否使用默认值
var param = varparam ? varparam : null;
return this.Info.Name + ".FunctionWithParam";
},
//不具有参数的函数对象
FunctionWithOutParam:function()
{
return this.Info.Name + ".FunctionWithOutParam";
}
};
})(jQuery);
//jQuery拓展函数的写法(不需要传入操作对象),即API函数
;(function($)
{
$.extend({
//PIF_TestExtendFunction为拓展函数的操作对象
//为了不会与其它插件名重复,这里我使用PlugIn的缩写PI_来定义插件对象前缀
PIF_TestExtendFunction:
{
//该拓展函数的基本信息
Info:{
Name: "TestExtendFunction",
Ver: "1.0.0.0",
Corp: "Lzhdim",
Author: "lzhdim",
Date: "2010-01-01 08:00:00",
Copyright: "Copyright @ 2000-2010 Lzhdim Technology Software All Rights Reserved",
License: "GPL"
},
//具有参数的函数对象
FunctionWithParams:function(paramObj)
{
//使用参数,是否使用默认值
var params = paramObj ? paramObj : {
param1: "1",
param2: "2"
};
return this.Info.Name + ".FunctionWithParamObect";
},
//具有参数的函数对象,这里参数是一个变量
FunctionWithParam: function (varparam) {
//使用参数,是否使用默认值
var param = varparam ? varparam : null;
return this.Info.Name + ".FunctionWithParam";
},
//不具有参数的函数对象
FunctionWithOutParam:function()
{
return this.Info.Name + ".FunctionWithOutParam";
}
}
});
})(jQuery);
$(function ()
{
//测试插件
var params =
{
param1: "3",
param2: "4"
};
alert($(this).PI_TestPlugIn.FunctionWithParams(params));
alert($.PIF_TestExtendFunction.FunctionWithOutParam());
});
</script>

(0)

相关推荐

  • javascript管中窥豹 形参与实参浅析

    引子: 今天看到别人的一个题目: 复制代码 代码如下: function fn(x){ x = 10; arguments[0] = 20; console.log(x,arguments[0]) } fn() 感觉自己对这也是一知半解,自己也可以试一下,于是就特地分析一下. 本想从语言的角度来分析,无奈功力不够,只能粗浅的尝试一下,于是称之管中窥豹,还望大牛指正. 这是昨天写的,今天吃饭的时候又想了一下,想来想去感觉有些问题还是说得不靠谱,于是又试着修改了一下. 每一本js入门书籍都会提到,J

  • php中函数的形参与实参的问题说明

    当实参个数<形参个数 时php会发出警告,因为php的解释机制会认为,有参数被定义了却没有被使用,那很可能会影响函数的功能.所以会发出警告.然而,当 实参个数>形参个数 时,php是不会报错的,它只会取前面的几个参数,多余的则将会丢弃. 在PHP中编写函数,一般情况下调用函数的时候,改变的值都是形参而不是实参.但是如果在形参中加入地址符时候就会改变实参的值,为什么? 请看下面的例子: 复制代码 代码如下: <?php //编写一个函数swap(),测试该函数的实参值无改变 functio

  • jquery封装插件时匿名函数形参和实参的写法解释

    在jquery插件中我们经常看到以下这段代码 ;(function ( $, window, document, undefined ){ //函数体内具体代码 })(jQuery, window,document); 1.代码最前面的分号,可以防止多个文件压缩合并以为其他文件最后一行语句没加分号,而引起合并后的语法错误. 2.匿名函数(function(){})();:由于Javascript执行表达式是从圆括号里面到外面,所以可以用圆括号强制执行声明的函数.避免函数体内和外部的变量冲突. 3

  • C++形参与实参的区别实例解析

    本文以实例阐述了C++中形参与实参的区别,有助于读者加深对于C++形参与实参的认识. 形参出现在函数定义中,在整个函数体内都可以使用, 离开该函数则不能使用.实参出现在主调函数中,进入被调函数后,实参变量也不能使用. 形参和实参的功能是作数据传送.发生函数调用时, 主调函数把实参的值传送给被调函数的形参从而实现主调函数向被调函数的数据传送. 1.形参变量只有在被调用时才分配内存单元,在调用结束时, 即刻释放所分配的内存单元.因此,形参只有在函数内部有效. 函数调用结束返回主调函数后则不能再使用该

  • jQuery下扩展插件和拓展函数的写法(匿名函数使用的典型例子)

    我选择了jQuery,最主要是它的思想"write less,do more",因为我是一个挑剔的人,以前写过的代码,会时不时翻出来,看看有没有可以精简,优化的地方.一来是对不断学习的推动,二来可以将新的思想,技术应用到里面去. 对于jQuery插件的写法,以前就有介绍过,网上也有很多例子. 这里简要地进行些写法,主要是简写的说明,见下列代码: <script type="text/javascript" src="jquery-1.4.2.js&q

  • 深入浅析Python 函数注解与匿名函数

    函数注解与匿名函数 关于函数参数的定义,调用以及函数参数的内容,在下面的文章中已经做了初步的介绍,有需要的可以访问进行了解: Python 函数 函数注解 在编写函数,当下肯定清楚函数如何使用的.若是函数较为复杂,过段时间,编写者有可能需要花一段时间去重新了解函数的使用,那其他使用者也同样会遇到这样的困惑. 所以当编写完函数后,可以为函数的参数添加一些额外的信息.这里给函数参数添加注解,能够提示程序员如何正确使用这个函数.如下示例: def add(x:int, y:int) -> int: '

  • c++11 符号修饰与函数签名、函数指针、匿名函数、仿函数、std::function与std::bind

    一.符号修饰与函数签名 1.符号修饰 编译器将c++源代码编译成目标文件时,用函数签名的信息对函数名进行改编,形成修饰名.GCC的C++符号修饰方法如下: 1)所有符号都以_z开头 2)名字空间的名字 名字空间(或类)的名字前加上N 名字前还有一个数字,是名字的字符数.比如1C,1是C的长度. 3)函数名 与名字空间一样,函数名前也有数字,比如4func,4是func的字符数. 4)参数 参数以E开头 例子 N::C::func(int) 的函数签名经过修饰为_ZN1N1C4funcEi 2.函

  • jQuery 函数实例分析【函数声明、函数表达式、匿名函数等】

    本文实例讲述了jQuery 函数用法.分享给大家供大家参考,具体如下: 命名函数 可多次调用. 函数声明: function func(args) {//执行语句}; 例: <script> $(document).ready(function() { //创建一个点击事件 $('img').clikc(show); //show()函数声明 function show() { var info = '<div><h3></h3></div>';

  • Python函数基础(定义函数、函数参数、匿名函数)

    目录 一.定义函数: 1.简单的规则: 2.语法 3.无参函数 4.有参函数 5.空函数 二.调用函数及返回值 1.函数运行完毕所有代码,如果函数体不写return,则会返回None. 2.函数可以返回一个或多个值(元组类型) 三.函数的参数 1.普通参数,位置必需参数 2.关键字参数 3.默认参数 4.不定长参数之* 注意:实参之* 5.不定长参数之** 注意:实参之** 可变长参数应用 6.命名关键字参数 四.函数对象 1.函数当作参数传给一个另一函数 2.函数当作另一函数的返回值 3.函数

  • js中匿名函数的创建与调用方法分析

    本文实例分析了js中匿名函数的创建与调用方法.分享给大家供大家参考.具体实现方法如下: 匿名函数就是没有名字的函数了,也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数.最经常用作回调函数(callback)参数的值,很多新手朋友对于匿名函数不了解.这里就来分析一下. function 函数名(参数列表){函数体;} 如果是创建匿名函数,那就应该是: function(){函数体;} 因为是匿名函数,所以一般也不会有参数传给他. 为什么要创建匿名函数呢?在什么情况下会使用到匿

  • 学习javascript的闭包,原型,和匿名函数之旅

    本文通过示例给大家介绍javascript的闭包,原型,和匿名函数,具体详情请看下文. 一 .>关于闭包 理解闭包 需要的知识 1.变量的作用域 例1: var n =99; //建立函数外的全局变量 function readA(){ alert(n); //读取全局变量 } readA(); //执行此函数 例2: function readB(){ var c = 9; function readC(){ console.log(c); //ok c可见 } return readC; }

  • js的匿名函数使用介绍

    1.匿名函数概述 关于匿名函数的第一次认识还是在jquery源码里,打开jQuery首先看到的是 复制代码 代码如下: (function( window, undefined ) {.......................})(window); 这就是一个匿名函数,红色为参数,匿名函数的作用是创建一块封闭区域,外面不能够访问里面的变量和方法. 既然不能访问,那怎么能调用jquery?这是因为jquery的匿名函数有这样两句话(蓝色字): 复制代码 代码如下: (function( win

  • javascript匿名函数中的'return function()'作用

    我最近看到很多javascript代码,看起来我错了.在这种情况下,我应该建议哪种更好的代码模式?我将重现我所看到的代码和每个代码的简短说明: 代码块#1 该代码不应该评估内部函数.程序员会因为代码应该运行而感到困惑. $(document).ready( function() { return function() { /* NOPs */ } }); 代码块#2 程序员可能打算实现一个自调用功能.他们没有完全完成实现(他们在嵌套括号的末尾缺少一个().另外,由于它们在外部函数中没有做任何事情

  • JS立即执行的匿名函数用法分析

    本文实例讲述了JS立即执行的匿名函数用法.分享给大家供大家参考,具体如下: ;(function() {})(); 1.他叫做立即运行的匿名函数(也叫立即调用函数) 2.当一个匿名函数被括起来,然后再在后面加一个括号,这个匿名函数就能立即运行起来!有木有很神奇哦~ 3.要使用一个函数,我们就得首先声明它的存在.而我们最常用的方式就是使用function语句来定义一个函数 4.Function 对象 Function对象是JavaScript里面的固有对象,所有的函数实际上都是一个Function

随机推荐