jQuery-插件,优化
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-插件,优化的更多相关文章
- 15 款优化表单的 jQuery 插件
网页上的表单提供给用户的一种交互的方式,用户输入数据,提交到服务器,等待后续的处理.这些表单在我们浏览的网页中随处可见,也容易被我们忽略. 比如,“联系我们”页面会提供一个表单给用户填写他们的信息和想 ...
- ajax——三级联动下拉列表框的优化(简化页面,用jquery插件代替原来页面代码,返回处理数据类型为"TEXT")
数据库: 主页面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
- 分享20款移动开发中很有用的 jQuery 插件
今天,很显然每个网站都需要有一个移动优化的界面以提高移动用户的使用体验.在开发任何移动项目时,要尽可能保持每一种资源尺寸都尽可能的小,以给最终用户提供一个好的体验是非常重要的.在这篇文章中我们已经编制 ...
- 原创jquery插件treeTable(转)
由于工作需要,要直观的看到某个业务是由那些子业务引起的异常,所以我需要用树表的方式来展现各个层次的数据. 需求: 1.数据层次分明: 2.数据读取慢.需要动态加载孩子节点: 3.支持默认展开多少层. ...
- 最新的jQuery插件和JavaScript库
每一个前端开发人员很清楚的重要性和功能的JavaScript库提供.它提供了一个简单的接口,用于构建快速动态的接口,而无需大量的代码. 谢谢你的超级从事jQuery开发者社区,人始终是创造新的和令人惊 ...
- jQuery插件写法总结以及面向对象方式写法总结
前两个是jQuery插件,后面2个是以对象的形式开发,都类似. 写法一 (function($, window){ // 初始态定义 var _oDialogCollections = {}; // ...
- 网站开发中很实用的 HTML5 & jQuery 插件
这篇文章挑选了15款在网站开发中很实用的 HTML5 & jQuery 插件,如果你正在寻找能优化网站,使其更具创造力和视觉冲击,那么本文正是你需要的.这些优秀的 jQuery 插件能为你的网 ...
- JQuery插件:遮罩+数据加载中。。。(特点:遮你想遮,罩你想罩)
在很多项目中都会涉及到数据加载.数据加载有时可能会是2-3秒,为了给一个友好的提示,一般都会给一个[数据加载中...]的提示.今天就做了一个这样的提示框. 先去jQuery官网看看怎么写jQuery插 ...
- 关于jquery插件 入门
关于 JavaScript & jQuery 的插件开发 最近在温故 JavaScript 的面向对象,于是乎再次翻开了<JavaScript高级程序设计>第3版,了解到其中常 ...
- jQuery性能优化的28个建议
我一直在寻找有关jQuery性能优化方面的小窍门,能让我那臃肿的动态网页应用变得轻便些.找了很多文章后,我决定将最好最常用的一些优化性能的建议列出来.我也做了一个jQuery性能优化的简明样式表,你可 ...
随机推荐
- 在iOS 应用中直接跳转到appstore的方法
找到应用程序的描述链接,比如:http://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8 然后将 http:// 替换为 itms ...
- mongoDB 3.0以前版本 - 入门指南、示例
一.准备工作 1. 下载mongoDB 下载地址:http://www.mongodb.org/downloads 选择合适你的版本 相关文档:http://www.mongodb.org/displ ...
- 浅析_tmain()与main()的区别
转自http://www.jb51.net/article/34516.htm _tmain()是为了支持unicode所使用的main一个别名,既然是别名,应该有宏定义过的,在哪里定义的呢?就在那个 ...
- Mysql控制语句
14.6.5.1 CASE Syntax 14.6.5.2 IF Syntax 14.6.5.3 ITERATE Syntax 14.6.5.4 LEAVE Syntax 14.6.5.5 LOOP ...
- NYOJ题目124中位数
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAssAAAJUCAIAAABsWvwaAAAgAElEQVR4nO3dPXLjuraG4TsJ5xqIYw
- Java中常见数据结构:list与map -底层如何实现
1:集合 2 Collection(单列集合) 3 List(有序,可重复) 4 ArrayList 5 底层数据结构是数组,查询快,增删慢 6 线程不安全,效率高 7 Vector 8 底层数据结构 ...
- PAL/NTSC 制电视广播技术有关知识--FPGA
1.PAL和NTSC的区别 常见的电视信号制式是PAL和NTSC,另外还有SECAM等. NTSC即正交平衡调幅制,PAL为逐行倒像正交平衡调幅制. (1)PAL电视标准 PAL电视标准,每秒25帧 ...
- 【Python】 用python实现定时数据解析服务(前言)
一.Why do it? 背景:项目里上传上来的数据都是未解析的数据,而且数据量还算挺庞大的,每天上传的数据有5kw左右,如果用数据库自带的作业来解析的话,数据库会造成严重的阻塞.因此打算把数据读到外 ...
- ExcelReport第一篇:使用ExcelReport导出Excel
导航 目 录:基于NPOI的报表引擎——ExcelReport 下一篇:ExcelReport源码解析 概述 本篇将通过导出学生成绩的示例演示“使用ExcelReport导出Excel”的步骤. ...
- C# 一些常用的技巧代码
1.字符串风格成字符数组: 比如将字符串:23$123$45$转换成int[]这样的数组,你该怎么转换?其实你不用写那么的for循环,只需要一句话: int [] Relst =Array.Conve ...