jQuery应用:

1、表单验证:

A:jQuery Validation插件:有时需要将验证的属性写在class中,有时需要将验证信息写在属性中,例如:

<input id="cemail" name="email" size="25" class="require email"  minlength=“2”/>

$(document).ready(function(){

$("#commentForm").validate()

})

B:jQuery.metadata.js插件:可以将所有的验证信息都写在class属性中

$('#commentForm').validate({meta:"validate"});

<inout id="cusername" name="username" size="25" class="{validate:{required:true,minlength:2}}"

C:将class属性移除,利用name属性;

$(document).ready(function(){

$("#commentForm").validate({

rules:{

username:{

required:true,

minlength:2

},

email:{

required:true,

email:true

},

url:"url",

comment:"required"

}

});

})

D:自定义验证信息:

class="{validate:{required:true,message:{required:'请输入姓名',minlength"'请至少输入2个字符'}}}"

E:验证码:

<input id="cvalcode" name="valcode" size="25" value="" />

$.validator.addMethod(

"formula",

function(value,element,param){

return value == eval(param);

}

'请输入数学公式计算后的结果'

)

在$("#commentForm").validate的rules中添加valcode:{formula:“7+9”}

2、jQueryForm插件:ajaxForm()以及ajaxSubmit()方法

$("#myForm").ajaxForm(function(){

$('#output1').html("提交成功").show();

})

*****************************

$('#myForm').submit(function(){

$(this).ajaxSubmit(function(){

$('#output1').html("提交成功").show();

})

return false;

})

*****************************

两个方法都可以传递一个或0个参数,单个参数可以是一个回调函数,可以是一个options对象:

var options={

target:'#output1',

beforeSubmit : showRequest,  //提交前回调函数

success : showRespone,   //提交成功后的回调函数

url : url,     //默认是form中action的值,如果申明,则会被覆盖

type : type,   //get,post

setTimeout : 3000,

clearForm : true,  //提交成功后,清除所有表单元素的值

resetForm : true,  //提交成功后,重置所有表单元素的值

dataType : null  //json ……接收服务端返回的类型

}

$('#myForm').submit(function(){

$(this).ajaxSubmit(options);

return false;

});

beforeSubmit指定的回调函数:

function showRequest(formData,jqForm,options){

//formData是一个数组对象,jqForm是一个jQuery对象,封装了表单元素

var queryString = $.param(formData);

return true;

}

success指定的回调函数:

function showResponse(responseText,statusText,xhr,$form){

//statusText是一个返回状态,success,error……

//responseText携带服务器返回的数据内容,对于缺省的html返回,第一个参数是XMLResquest对象的responseText

}

在提交前验证表单:利用formData参数,利用参数jqForm,利用fieldValue()方法

3、创建模态窗口---SimpleModal插件

$(“#element-id”).modal()

$.modal(“<div><h1>SimpleModel</h1></div>”)

还可以传一个参数:

$(“#element-id”).modal({options})

$.modal(“<div><h1>SimpleModel</h1></div>”,{options})

<a herf="#" class="simplemodal-close">关闭</a>

"simplemodal-close"是一个默认关闭接口,只要通过调用$.modal.close()方式关闭当前模态窗口

如果想自己定义一个关闭接口,可以修改全局变量:

$.modal.defaults.closeClass = "modalClose";

修改多个默认参数:

$.extend($.modal.defaults,{

closeClass:"modalClose",

closeHtml : "<a herf="#">Close</a>"

})

4、Cookie插件:

A:写入cookie:$.cookie(“the_cookie”, “the_value”);

B:读取cookie:$.cookie(“the_cookie);

C:删除cookie:$.cookie(”the_cookie” , null)

5、jQuery UI插件:拖到排序组件

$(document).ready(function(){

$("#myList").sortable(); //可以拖动

})

//单与单击事件冲突时:

$("#myList").sortable({delay:1});

获取列表元素拖到后的顺序,sortable(“serialize”)

$("#myList").sortable({

delay:1,

stop:function(){

$.post(

"sortable.php",

$("#myList").sortable("serialize"),

function(response){

alert(response);

}

)

}

})

6、编写jQuery插件:

A:

;(function($){

$.fun.extend({

“color”:function(value){},

“border”:function(value){}

})

})(jQuery);

Jquery Mobile:

1、加载顺序:

<link rel="stylesheet" type="text/css" href="jquery.mobile.css">

<script type="text/javascript" src="jquery.js"></script>

………………//这里是项目中的其他js

<script type="text/javascript" src="jquery.mobile.js"></script>

2、在HTML5中,属性名有data-前缀

jQuery性能优化:

1、事件代理时:

$('#myTable').on('click','td',function(){

})

2、使用join()将数组转化为字符串

3、$.proxy()的使用:

<div id="panel" style="display:none">

<button>close</button>

</div>

//执行下面代码,button元素会消失

$('#panel').fadeIn(function(){

$("#panel button").click(function(){

$(this).fadeOut();

});

});

//使用$.proxy()解决上述问题

$('#panel').fadeIn(function(){

$("#panel button").click($.proxy(function(){

//this指向#panel

$(this).fadeOut();

},this));

});

jQuery-插件,优化的更多相关文章

  1. 15 款优化表单的 jQuery 插件

    网页上的表单提供给用户的一种交互的方式,用户输入数据,提交到服务器,等待后续的处理.这些表单在我们浏览的网页中随处可见,也容易被我们忽略. 比如,“联系我们”页面会提供一个表单给用户填写他们的信息和想 ...

  2. ajax——三级联动下拉列表框的优化(简化页面,用jquery插件代替原来页面代码,返回处理数据类型为"TEXT")

    数据库: 主页面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...

  3. 分享20款移动开发中很有用的 jQuery 插件

    今天,很显然每个网站都需要有一个移动优化的界面以提高移动用户的使用体验.在开发任何移动项目时,要尽可能保持每一种资源尺寸都尽可能的小,以给最终用户提供一个好的体验是非常重要的.在这篇文章中我们已经编制 ...

  4. 原创jquery插件treeTable(转)

    由于工作需要,要直观的看到某个业务是由那些子业务引起的异常,所以我需要用树表的方式来展现各个层次的数据. 需求: 1.数据层次分明: 2.数据读取慢.需要动态加载孩子节点: 3.支持默认展开多少层. ...

  5. 最新的jQuery插件和JavaScript库

    每一个前端开发人员很清楚的重要性和功能的JavaScript库提供.它提供了一个简单的接口,用于构建快速动态的接口,而无需大量的代码. 谢谢你的超级从事jQuery开发者社区,人始终是创造新的和令人惊 ...

  6. jQuery插件写法总结以及面向对象方式写法总结

    前两个是jQuery插件,后面2个是以对象的形式开发,都类似. 写法一 (function($, window){ // 初始态定义 var _oDialogCollections = {}; // ...

  7. 网站开发中很实用的 HTML5 & jQuery 插件

    这篇文章挑选了15款在网站开发中很实用的 HTML5 & jQuery 插件,如果你正在寻找能优化网站,使其更具创造力和视觉冲击,那么本文正是你需要的.这些优秀的 jQuery 插件能为你的网 ...

  8. JQuery插件:遮罩+数据加载中。。。(特点:遮你想遮,罩你想罩)

    在很多项目中都会涉及到数据加载.数据加载有时可能会是2-3秒,为了给一个友好的提示,一般都会给一个[数据加载中...]的提示.今天就做了一个这样的提示框. 先去jQuery官网看看怎么写jQuery插 ...

  9. 关于jquery插件 入门

    关于 JavaScript & jQuery 的插件开发   最近在温故 JavaScript 的面向对象,于是乎再次翻开了<JavaScript高级程序设计>第3版,了解到其中常 ...

  10. jQuery性能优化的28个建议

    我一直在寻找有关jQuery性能优化方面的小窍门,能让我那臃肿的动态网页应用变得轻便些.找了很多文章后,我决定将最好最常用的一些优化性能的建议列出来.我也做了一个jQuery性能优化的简明样式表,你可 ...

随机推荐

  1. Android Canvas绘图详解(图文)

    编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识.前端.后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过! Andr ...

  2. 【elasticsearch】python下的使用

    有用链接: 最有用的:http://es.xiaoleilu.com/054_Query_DSL/70_Important_clauses.html 不错的博客:http://www.cnblogs. ...

  3. py随笔

    while true,无限循环 str.isdigit判断是不是数字 +只能在两个两个相同的类型之间执行 iter(i)将i加入迭代器

  4. MVC3.0删除数据的时候给提示信息

    Index.cshtml代码: @model IEnumerable<FirstMvc.Models.Book> <script type="text/javascript ...

  5. -bash: pod: command not found

    OS X 系统没升级之前用的 cocoapods 一点儿问题都没有,但是升级成版本10.11.4 OS X EI Capitan之后,在终端除了cd 指令可以用之外,其他任何指令输入都是提示-bash ...

  6. C# 泛型约束

    一.泛型简介1.1泛型通过使用泛型,可以创建这样的类.接口和方法,它们以一种类型安全的工作方式操作各种数据.本质上,术语“泛型”指的是“参数化类型”(parameterized types).参数化类 ...

  7. hdu 5585 Numbers

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5585 思路:对于2和5只须看最后一位数,对于三看所有位的数字之和就行 #include<stdi ...

  8. SQL——触发器——插入触发器——边学边项目写的。

    需求: 项目表项目编码触发器编写 为项目表DwProject编写触发器,目的为当创建新项目时,且ProjectNo 为Null或空字符串时,自动创建项目编号,编号格式为4位年号,2位月份,2位顺序号, ...

  9. ExcelReport第一篇:使用ExcelReport导出Excel

    导航 目   录:基于NPOI的报表引擎——ExcelReport 下一篇:ExcelReport源码解析 概述 本篇将通过导出学生成绩的示例演示“使用ExcelReport导出Excel”的步骤. ...

  10. C# 使用Conditional特性而不是#if条件编译

    概述 #if/#endif 语句常用来基于同一份源码生成不同的编译结果,其中最常见的就是debug版和release版.但是这些工具在实际应用中并不是非常友好,因为它们容易被滥用,其代码页进而难以理解 ...