jQuery 是一个非常棒的类库,但是为了保证代码的干净以及代码的精简,它只提供最核心的功能。所以就有了很多其他的工具来丰富jQuery的功能。我在使用这些工具的时候发现我常常重复的编写一些代码,所以我就开始把它们整理到一个类库中。我把这些代码都包装成了jQuery的代码,但这并不是必须的,你也可以在其他JS类库中使用他们,或者单独使用。

你可以在 这里下载这个类库。

jQuery.postJSON() 
我不明白为何 jQuery 没有把这个方法加进去,虽然他们有 $.getJSON 方法。

1 $.postJSON(
2     "/put/path/here",
3     {val1: "Cheetos", val2: "Nachos"},
4     function(response){ //on success do something }
5 );

jQuery.stop() 
这个方法是用来停止事件传递的。它接受两个参数,preventDefault 和 stopPropgation。

1 $.stop(event, preventDefault, stopPropagation);
2  
3 $("#container").click(function(e)
4 {
5     $.stop(e, truetrue);  
6 });

jQuery.shuffleArray() 
这个我用的不多,但是很好用,它可以随机的打乱一个数组。

1 $.shuffleArray([1,2,3,4,5,6,7]); //potential output: [1,3,5,7,2,4,6]

jQuery.reload() 
这个函数就是“window.location.reload(true)”的缩写。

1 $.reload();

jQuery.uri() 
这个函数可以解析 URL 的 URI 部分,可以通过 index 的方式访问,从1开始。

1 http://www.domain.com/this/domain/rocks
2     
3 $.uri(1); //will output this
4 $.uri(3); //will output rocks

jQuery.URLParams() 
这个函数我起码写过100遍。

1 http://www.domain.com/this/domain/rocks?param=fantastic&test=awesome#websanova
2  
3 $.URLParams(); // {param: 'fantastic', test: 'awesome'}
4 $.URLParams('test'); // awesome

jQuery.URLHash() 
这个函数类似 URLParams,但是它返回的是 URL 中的 “#” 部分,如果有的话。

1 http://www.domain.com/this/domain/rocks?param=fantastic&test=awesome#websanova
2  
3 $.URLHash(); // websanova

jQuery.hexToRGB() 
这个函数也很好用,它接受一个十六进制的数字,或者RGB字符串,相互转换,非法数据会返回 false。

1 $.hexToRGB("#FF3388"); // rgb(255,51,136)
2 $.hexToRGB("#F38");    // rgb(255,51,136)
3 $.hexToRGB("#ZZ3388"); // false
4 $.hexToRGB("F38A");    // false
5  
6 $.hexToRGB("rgb(22,67,234)"); // #1643EA
7 $.hexToRGB("rgb(22,67,274)"); // false
8 $.hexToRGB("rgb(22,67)");     // false

jQuery.base64Encode() 
将 UTF-8 的字符串用 base64 编码。

1 $.base64Encode("encode this string"); // ZW5jb2RlIHRoaXMgc3RyaW5n

jQuery.base64Decode() 
base64 解码,同样也是 UTF-8 编码。

1 $.base64Decode("ZW5jb2RlIHRoaXMgc3RyaW5n"); // encode this string

jQuery.utf8Encode() 
将 String 转换成 UTF-8 编码的,主要用于上面提到的 base64Encode 函数。

1 $.utf8Encode("utf8 encode this");

jQuery.utf8Decode() 
UTF-8 解码。

1 $.utf8Decode("utf8 encode this");

.removeClassRegEx() 
这个方法真是太好用了,可以移除指定元素的指定 class。

1 <div class="test testing leavemealone hellotest Tester"></div>
2  
3 $("#container").removeClassRegEx(/test/i);  //class="leavemealone"
4 $("#container").removeClassRegEx(/test/);   //class="leavemealone Tester"
5 $("#container").removeClassRegEx(/^test/i); //class="leavemealone hellotest"
6 $("#container").removeClassRegEx(/test$/);  //class="testing leavemealone Tester"

.hasClassRegEx() 
和 removeClassRegEx 类似,这个方法检查指定元素是否有指定的 class。

1 <div class="test testing leavemealone hellotest Tester"></div>
2  
3 $("#container").removeClassRegEx(/test/i);    // true
4 $("#container").removeClassRegEx(/test/);     // true
5 $("#container").removeClassRegEx(/^test/i);   // true
6 $("#container").removeClassRegEx(/test$/);    // true
7 $("#container").removeClassRegEx(/^testy$/);  // false

.maxChars() 
这个函数对那些没有“maxlength”属性的input元素就很有用。它也可以指定一个元素来显示剩余字符。

1 $("input").maxChars(50);
2 $("input").maxChars(50, $("#maxChars_counter"));

Object.sizeof() 
这个方法是 JavaScript 的一个扩展,可以让你获取对象的长度。

1 {cow: "moo", duck: "quack"}.sizeof(); // 2

String.capitalize() 
这是 String 对象的一个扩展,可以把一个字符串变成大写的。

1 "test".capitalize(); // Test

String.pxToInt() 
这个方法用了很多,特别是在我返回一个 CSS 属性的时候,我希望得到一个整数。

1 "210px".pxToInt(); //210
2 $("container").css('height').pxToInt(); // 400

原文链接, OSChina.NET 原创编译

jQuery 工具大搜集的更多相关文章

  1. Web安全工具大汇聚

    http://www.owasp.org/index.PHP/Phoenix/Tools http://sebug.net/paper/other/Web安全工具大汇聚.txt =========== ...

  2. 干货!IT小伙伴们实用的网站及工具大集合!持续更新!

    1.Git 还在担心自己辛辛苦苦写的代码被误删了吗?还在担心自己改错了代码不能挽回吗?还在苦恼于多人开发合作找不到一个好的工具吗?那么用Git就对 了,Git是一个开源的分布式版本控制系统,用以有效. ...

  3. jQuery幸运大转盘_jQuery+PHP抽奖程序的简单实现

    jQuery幸运大转盘_jQuery+PHP抽奖程序的简单实现 在线实例 查看演示 完整代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ...

  4. jquery——九宫格大转盘抽奖

    一.用到的图片 二.代码如下,重点是js部分 <!DOCTYPE html> <html> <head> <meta http-equiv="Con ...

  5. jquery datepicker-强大的日期控件

    在web开发中,总会遇到需要用户输入日期的情况.一般都是提供一个text类型的input供用户输入日期.然而,这种方式,开发人员必须对用户输入的日期进行验证,判断其合法性.除此之外,让用户输入日期也是 ...

  6. 从零开始学习jQuery (九) jQuery工具函数

    一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些许秘籍. 我们经常要使用脚本处理各种业务逻辑, 最常见的就 ...

  7. Python全栈-JavaScript】jQuery工具

    jQuery工具 一.jQuery.browser.version 显示当前 IE 浏览器版本号. if ( $.browser.msie ) alert( $.browser.version ); ...

  8. Android平台下渗透测试工具大集合

    Android平台下渗透测试工具大集合 分享一个google的项目,各种Android下的渗透测试工具. Ad Network Detector (1.2): http://market.androi ...

  9. 让Quality Center走下神坛--测试管理工具大PK(转)

    让Quality Center走下神坛--测试管理工具QC/ALM 和 RQM.Jira.TP.SCTM大PK 在写完了<让QTP走下神坛>之后,现在来谈谈测试管理工具,献给所有正在或打算 ...

随机推荐

  1. redhat 6.4 安装VirtualBox自动增强功能功:unable to find the sources of your current Linux kernel

    redhat 6.4 安装VirtualBox自动增强功能功能的时候提示: building the main Guest Additions module FAILED unable to find ...

  2. PLSQL_统计信息系列02_统计信息的对象

    20150505 Created By BaoXinjian

  3. KASAN实现原理

    1. 前言 KASAN是一个动态检测内存错误的工具.KASAN可以检测全局变量.栈.堆分配的内存发生越界访问等问题.功能比SLUB DEBUG功能齐全并且支持实时检测.越界访问的严重性和危害性通过我之 ...

  4. java 实现万年历

    曾经初学java写万年历,都是採用主要的算法求出是否闰年闰月 计算公式例如以下 int year = 2014, month = 8, total = 0; if (month == 1 || mon ...

  5. javascript ES6模块化

    一.将模块导出去 /* *将模块导出去 *a.js文件 */ const a=12; export default a; /* *将模块导出去 *b.js文件 */ const a=5; export ...

  6. oracle ORA-00119和ORA-00132解决方法

    ORA-00119 ORA-00132解决方法. 思路:*.local_listener错误导致.要*.local_listener就要修改spfile文件,因为oracle默认是以spfile文件启 ...

  7. mybatis 一二事(1) - 简单介绍

    mybatis呢是一个orm数据库框架,非常适合新人学,门槛相对较低 本人呢曾经是先做的hibernate,后接触的mybatis,接触mabatis前我比较抵触,为啥呢, 当时喜欢hibernate ...

  8. Unity3d官方测试插件学习-单元测试,集成测试

    2016/11/27更新:官方的测试工具有许多问题,我修改了一个版本 https://git.oschina.net/Hont/UnitTest_Modifyed 支持切场景,异常不失败等 其实Uni ...

  9. 并行开发系列 Plinq等

    http://www.cnblogs.com/huangxincheng/archive/2012/04/03/2430638.html

  10. Netlink 内核实现分析(二):通信

    在前一篇博文<Netlink 内核实现分析(一):创建>中已经较为具体的分析了Linux内核netlink子系统的初始化流程.内核netlink套接字的创建.应用层netlink套接字的创 ...