这些年主要关注于项目管理方面的工作,编码就比较少了。这几天比较空闲,就想把原来的经验沉淀下来,一个是做好记录,以后如果忘记了还能尽快找回来,第二个是写写博文,算是练练手笔吧。

言归正传,这次写的是Javascript类库。大家都知道,Javacript是一种很有意思的语言。虽然它是前端语言,但是它能做的事情远远超出我们的想象。Javascript同样是一种面向对象的语言,使用它,同样可以自定义对象,同样也具备对象的一些特性,即封装,继承,多态性。同时,Javascript同样也有设计模式,同样能过编写出高质量的代码,虽然在很多时候不是很需要这样。

这次要写的Javascript类库,其实很简单,只是用jQuery插件的方式将各种自定义函数进行封装而已,便于调用。下面是Visual Studio 2013的解决方案图。

这里其实也是定义了Javascript的一种架构,即jQuery的架构方式(基于目录的架构)。后续将会继续补充和完善该jQuery插件的使用方法等等。关于架构方面,以前关注得也相对比较多,但是最近想再翻出来玩玩,所以后续也会陆续有关于.NET架构方面的文章发出。

这次写的类库其实很简单,就是用jQuery封装了一下,使用了Javascript的匿名函数进行的。具体可以看我以前的一片博文:jQuery扩展插件和拓展函数的写法(匿名函数使用的典型例子)

下面简要对该类库做个说明。先看编写方式说明:

相信有一点Javascript基础的人就能看得懂了。使用方法很简单,就是基于jQuery的匿名函数编写的静态函数而已。

使用方法:$.JSFn.FunctionWithOutParam();

然后开始看代码:

这里用jQuery的extend方法进行了扩展,就是基于这种方式的一种封装。定义了该插件,即函数名称为JSFn,这里没有使用Common,主要是认为这个是Javascript的一些自定义函数,应该封装在函数库中。上面同时定义了PlugInInfo这个静态变量,使用静态变量的方式声明了该类库的一些基本信息。

下面拿一个库中的函数进行下说明:

首先,声明函数名称CheckBrowser,用function匿名函数封装起来。在函数的{号下面添加函数声明注释。

/// <summary>

/// 检测浏览信息

/// </summary>

/// <returns>返回包含浏览器信息的变量</returns>

这里必须这样子添加注释,否则在使用该类库的时候无法取得智能函数提示了。见下图。

下面看看测试用例:

这里只是简单的获取了该类库的一些静态变量的基本信息而已。

上面的测试方法,同样能使用下面的方式进行测试:

使用上面的代码,就能够把该代码插入到页面的任意位置,反正也是在页面各元素控件加载完毕后再执行。

最后,提供该函数类库的下载,欢迎大家添加并共享出来。

http://files.cnblogs.com/lzhdim/JSFn.js

上面简要的描述了基于jQuery匿名函数的Javascript函数类库的编写方法,希望能够对大家有那么点帮助那就够了。

Ps.今天已经周四了,时间过得很快,马上又要到年底了。祝愿在剩下的几个月中能有好的文章写出来。

编写Javascript类库(jQuery版) - 进阶者系列 - 学习者系列文章的更多相关文章

  1. 编写Javascript类库(jQuery版

    编写Javascript类库(jQuery版) - 进阶者系列 - 学习者系列文章 Posted on 2014-11-13 09:29 lzhdim 阅读(653) 评论(1) 编辑 收藏 本系列文 ...

  2. jQuery插件库代码分享 - 进阶者系列 - 学习者系列文章

    这些天将原来在网上找的jQuery插件进行了下整理,特此将代码分享出来给大家. 见下图结构. 对目录结构进行了分类.这里是插件列表. 这里总共收集了20来个插件.还有下面未进行划分的. 下面是DEMO ...

  3. VMWare 11安装操作系统 - 初学者系列 - 学习者系列文章

    在2010年的时候,我写过一篇关于VMWare的安装操作系统的博文.但是今天在QQ群里有人问起VMWare安装操作系统的问题,虽然回答了,但是回头看了下当时那篇博文,决定重新写一文. 首先要获取VMW ...

  4. 使用U盘的PE系统安装Windows10操作系统 - 初学者系列 - 学习者系列文章

    今天闲来无事,就把windows 10的安装再重写一个文(以前写过一个:安装免费的正版Windows10操作系统 - 初学者系列 - 学习者系列文章  ). 1.  制作一个WinPE的U盘. 相信现 ...

  5. 安装Windows10操作系统 - 初学者系列 - 学习者系列文章

    今天无事,就将安装操作系统的几种方式进行了总结( https://www.cnblogs.com/lzhdim/p/13719725.html ).这篇博文主要是对安装windows10操作系统的过程 ...

  6. Windows无法安装到GPT格式磁盘的根本解决办法 - 初学者系列 - 学习者系列文章

    上次在MSDN系统QQ群里有朋友问到在安装操作系统的时候有个问题:Windows无法安装到GPT格式磁盘,见图: 我在这里说下,使用网上方法的都是小白,就是说网上那些都是小白.下面介绍如何正确安装操作 ...

  7. 安装Windows11操作系统(不需要绕过TPM检测脚本等) - 初学者系列 - 学习者系列文章

    Windows11操作系统是去年微软公司的最新力作.对于该操作系统的安装,网上有很多的教程了.这次主要写的是不需要绕过TPM检测操作安装Windows11操作系统. 1.        制作启动U盘: ...

  8. 编写javascript、Jquery的String.format();

    在javascript.Jquery里面好像是没有String.format();这个函数的,所以我们在拼接字符串的时候就特别的辛苦,生怕又打错,而且又乱,所以就自己去写一个函数来代替. String ...

  9. JavaScript类库---JQuery(一)

    1.基础: Jquery类库定义了一个全局函数:JQuery(); 别名$.是JQuery在全局命名空间中定义的唯一两个变量.返回一个新创建的JQuery对象: 另:JQuery中定义的许多方法返回值 ...

随机推荐

  1. PHP中有关正则表达式的函数集锦

    之前学正则表达式的目的是想从网上抓取点小说啊,文档啊,还有获取相应的视频连接然后批量下载.当时初学PHP根本不知道PHP有专门抓包的工具,就像Simple_html_dom.php(在我的其他博文中有 ...

  2. vmware安装win7提示No CD-ROM drive to use:GCDROM not loaded

    今天安装win7 64位的操作系统到vmware虚拟机,以为一切事如此的简单,因为自己以前经常拿vmware来装系统,结果确出现下面莫名其妙的错误: 提示说没有CD-ROM,可是我明明在vmware的 ...

  3. 用javascript做一个视频播放器

    以前我们在网页上播放视频,都是要麻烦flash来实现.看着那一大段的<object>真心觉得累.随着html5的不断普及,现在是时候使用html5提供的video元素来做点正经事了,但是要 ...

  4. HBase 数据模型(Data Model)

    HBase Data Model--HBase 数据模型(翻译) 在HBase中,数据是存储在有行有列的表格中.这是与关系型数据库重复的术语,并不是有用的类比.相反,HBase可以被认为是一个多维度的 ...

  5. DB2 Enterprise Server Edition(DB2 ESE)9.1在Windows Server 2008 下出现无法新建数据库的情况,及解决办法

    在安装有,DB2 9.1版本的Windows Server 2008 上面,使用默认的安装方式导致无法创建数据库,相关的错误提示: "SQL3012C 发生系统错误(原因码= "& ...

  6. 深入seajs源码系列二

    模块类和状态类 参照上文的demo,我们结合源码分析在简单的API调用的背后,到底使用了什么技巧来实现各个模块的依赖加载以及模块API的导出. 首先定义了一个Module类,对应与一个模块 funct ...

  7. 如何用easyui+JAVA 实现动态拼凑datagrid表格

    先给大家看一看效果,最近一段时间都在研究这个东西. 如果我把日期间隔选宽呢?比如5月日到5月5日?下面给大家看看效果,不用担心哦 看到了吧,哈哈,这个日期都是动态生成的,下面就来跟大家分享一下这个的实 ...

  8. C# GZip对字符串压缩和解压

    /// <summary> /// 压缩方法 /// </summary> public static string CompressString(string str) { ...

  9. 网络基础 : OSI参考模型

    Overview OSI规范的作用之一就是帮助在不同的主机之间传输数据. OSI模型包含7层,它们分为两组. 上面3层指定了终端中的应用程序如何彼此通信以及如何与用户交流: 下面4层指定了如何进行端到 ...

  10. [WCF编程]12.事务:事务协议与管理器

    一.事务协议 总体来说,WCF开发人员不需要涉及事务协议与管理器.我们应该依赖WCF来选择相应的事务协议和管理器,重点关注业务逻辑的实现. WCF是根据事务范围里的参与个体来选择事务管理协议的.事务管 ...