编写Javascript类库(jQuery版) - 进阶者系列 - 学习者系列文章
这些年主要关注于项目管理方面的工作,编码就比较少了。这几天比较空闲,就想把原来的经验沉淀下来,一个是做好记录,以后如果忘记了还能尽快找回来,第二个是写写博文,算是练练手笔吧。
言归正传,这次写的是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版) - 进阶者系列 - 学习者系列文章的更多相关文章
- 编写Javascript类库(jQuery版
编写Javascript类库(jQuery版) - 进阶者系列 - 学习者系列文章 Posted on 2014-11-13 09:29 lzhdim 阅读(653) 评论(1) 编辑 收藏 本系列文 ...
- jQuery插件库代码分享 - 进阶者系列 - 学习者系列文章
这些天将原来在网上找的jQuery插件进行了下整理,特此将代码分享出来给大家. 见下图结构. 对目录结构进行了分类.这里是插件列表. 这里总共收集了20来个插件.还有下面未进行划分的. 下面是DEMO ...
- VMWare 11安装操作系统 - 初学者系列 - 学习者系列文章
在2010年的时候,我写过一篇关于VMWare的安装操作系统的博文.但是今天在QQ群里有人问起VMWare安装操作系统的问题,虽然回答了,但是回头看了下当时那篇博文,决定重新写一文. 首先要获取VMW ...
- 使用U盘的PE系统安装Windows10操作系统 - 初学者系列 - 学习者系列文章
今天闲来无事,就把windows 10的安装再重写一个文(以前写过一个:安装免费的正版Windows10操作系统 - 初学者系列 - 学习者系列文章 ). 1. 制作一个WinPE的U盘. 相信现 ...
- 安装Windows10操作系统 - 初学者系列 - 学习者系列文章
今天无事,就将安装操作系统的几种方式进行了总结( https://www.cnblogs.com/lzhdim/p/13719725.html ).这篇博文主要是对安装windows10操作系统的过程 ...
- Windows无法安装到GPT格式磁盘的根本解决办法 - 初学者系列 - 学习者系列文章
上次在MSDN系统QQ群里有朋友问到在安装操作系统的时候有个问题:Windows无法安装到GPT格式磁盘,见图: 我在这里说下,使用网上方法的都是小白,就是说网上那些都是小白.下面介绍如何正确安装操作 ...
- 安装Windows11操作系统(不需要绕过TPM检测脚本等) - 初学者系列 - 学习者系列文章
Windows11操作系统是去年微软公司的最新力作.对于该操作系统的安装,网上有很多的教程了.这次主要写的是不需要绕过TPM检测操作安装Windows11操作系统. 1. 制作启动U盘: ...
- 编写javascript、Jquery的String.format();
在javascript.Jquery里面好像是没有String.format();这个函数的,所以我们在拼接字符串的时候就特别的辛苦,生怕又打错,而且又乱,所以就自己去写一个函数来代替. String ...
- JavaScript类库---JQuery(一)
1.基础: Jquery类库定义了一个全局函数:JQuery(); 别名$.是JQuery在全局命名空间中定义的唯一两个变量.返回一个新创建的JQuery对象: 另:JQuery中定义的许多方法返回值 ...
随机推荐
- C语言之通过冒泡排序浅谈编程思想
写这篇博文的目的是想起到抛砖引玉的作用,还请大牛们留下一些先进的思想,让小菜学习一下.下面入正题. 复习C语言怎么能少的了冒泡呢,记得刚学C语言那会,感觉冒泡排序真的太复杂了,理解不大了,嗯!还是当时 ...
- CSS字体记录
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAaYAAACnCAIAAADVOG9FAAAgAElEQVR4nOy9eXwcxZk/vL/9ve8eb7 ...
- 把《c++ primer》读薄(3-2 标准库vector容器+迭代器初探)
督促读书,总结精华,提炼笔记,抛砖引玉,有不合适的地方,欢迎留言指正. 标准库vector类型初探,同一种类型的对象的集合(类似数组),是一个类模版而不是数据类型,学名容器,负责管理 和 存储的元素 ...
- 使用GIT@OSChina 实现协同工作的方法。
由于我新建了一个团队,团队里的人对于GIT都不太熟悉,所以才有了这篇文章.我用的是git-1.9.4的版本,所以我建议团队里面的成员也使用这个版本.首先是下载git,这个自己去网上找吧,一大堆,记得是 ...
- 利用SimpleExpandableListAdapter为ExpandableListActivity提供数据
首先MainActivity继承自ExpandableListActivity,其中的声明如下: setContentView(R.layout.expandmain); //定义一个:List,该L ...
- VC++6.0文件关联问题的解决方法
最近我的电脑*.c文件关联失败,无法实现双击*.c打开vc++6.0,感觉特别不爽. 在经过自己的琢磨研究后,终于找到了解决方法. 特此分享下,希望可以帮到遇到同样问题的你. 核心内容: 1.& ...
- Hadoop NameNode的ZKFC机制
博客原文:hackershell 之前在准备中级课程PPT,整理了下HA的基本内容,并且感谢松哥为我们提供了HA不会切的问题,以至于之后刚好出现的NameNode宕机,能够快速解决. NameNode ...
- 从ListView逐步演变到RecyclerView
ListView是我们开发中最常用的组件之一,在以往的PC端组件开发中,列表控件也是相当重要的,但是从桌面端到移动端,情况又有新的变化. 移动端的屏幕并不像桌面端那么大,并且移动端不可能把所有的内容都 ...
- sessionid如何产生?由谁产生?保存在哪里?
面试问道这个我居然不知道怎么回答,当然也是因为我确实没有研究过.下面就是百度了一篇文章后简单回答这个问题. 参考:http://www.cnblogs.com/sharpxiajun/p/339560 ...
- jQuery-1.9.1源码分析系列(二)jQuery选择器续1
在分析之前说一点题外话. ownerDocument和 documentElement的区别 ownerDocument是Node对象的一个属性,返回的是某个元素的根节点文档对象:即document对 ...