jQuery学习总结
1:jQuery是什么
jQuery是继prototype之后又一个优秀的Javascript框架。它是轻量级的js库,兼容各种浏览器(IE 6.0+, FF 1.5+, Safari 2.0+, Opera 9.0+)。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种 应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插 入一堆js来调用命令了,只需定义id即可。
2:jQuery选择器
jQuery最强大的方面之一就是它能够简化DOM遍历任务。一般来说,可以通过html文档中的元素的标签名,id属性,class属性来获取该元素。举例如下:
标签名:$(‘p’)会取得文档中所有的段落。
Id:$(‘#some-id’)会取得文档中具有对应id为some-id的一个元素。这里使用的是“#”号。
Class:$(‘.some-class’) 会取得文档中带有some-class类的所有元素。这里使用的是“.”符合
由于通过选择器获取的元素可能不止一个,因此,一个jQuery对象实际上可以说是一个集合,集合中包含多个被获取到的元素。
有时,我们可能需要通过元素的属性对元素进行选择。在jQuery中,在涉及属性选择符时,jquery使用了XPath中的惯例来标识属性,即将属性前 置一个@符号并放在一个方括号中。例如,要选择所有带title属性的链接,可以使用下面的代码:$(‘a[@title]’)。属性选择符允许以类似正 则表达式的语法来标识字符的开始(^)和结尾($),也可以使用(*)来表示字符串中的任意位置。例如,要取得所有电子邮件链接,需要构造一个选择符,用 来寻找所有href属性([]@href)且以mailto开头(^=”mailto”)的锚元素。结果如下所示:
$(‘a[@href^=”mailto”]’);
3:jQuery事件有哪些
bind():为每一个匹配元素的特定事件(像click)绑定一个事件处理器函数。例如:当每个段落被点击的时候,弹出其文本,
$("p").bind("click", function(){
alert( $(this).text() );
});
unbind():bind()的反向操作,从每一个匹配的元素中删除绑定的事件。例如:将段落的click事件取消绑定,
$("p").unbind( "click" );
而实际上,我们经常不这么写,因为jQuery本身已经提供了很多常用的事件的函数供我们调用,例如:将页面内所有段落点击后隐藏,
$("p").click( function () { $(this).hide(); });
另外,在不前置@符的情况下,可以用来指定包含在另一个元素中的属性。例如取到包含一个ol元素的所有div元素,代码:$(‘div[ol]’)。
在jQuery中,当触发任何事件处理程序时,关键字this引用的都是携带相关行为的DOM元素。通过在事件处理程序中使用$(this),可以为相应的元素创建一个jQuery对象。例如如下用法:
$("p").click( function () { $(this).addClass(‘selected’); });
4:jQuery对象与dom对象的转换
只有jquery对象才能使用jquery定义的方法。注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象。
普通的dom对象一般可以通过$()转换成jquery对象。
如:$(document.getElementById("msg"))则为jquery对象,可以使用jquery的方法。
由于jquery对象本身是一个集合。所以如果jquery对象要转换为dom对象则必须取出其中的某一项,一般可通过索引取出。
如:$("#msg")[0],$("div").eq(1)[0],$("div").get()[1],$("td")[5]这些都是dom对象,可以使用dom中的方法,但不能再使用Jquery的方法。
以下几种写法都是正确的:
$("#msg").html();
$("#msg")[0].innerHTML;
5:ajax
asynchronous javascript and xml:异步的javascript和xml。
ajax是一种用来改善用户体验的技术,其本质是利用浏览器内置的一种特殊的对象 (XMLHttpRequest)异步(即发送请求时,浏览器不会销毁当前页面,用户可以继续在当前页面做其它的操作)的向服务器发送请求,并且利用服务器返回的数据(不再是一个完整的页面,只是部分的数据,一般使用文本或者xml返回)来部分更新当前页面。使用ajax技术之后,页面无刷新,并且不打断用户
的操作。
ajax的优点
(1).页面无刷新
(2).不打断用户的操作,用户的体验好。
(3).按需获取数据,浏览器与服务器之间数据的传输量减少。
(4).是一个标准技术,不需要下载任何的插件。
(5).可以利用客户端(浏览器)的计算能力。
请求方式
get和post请求
ajax的缓存问题:
当使用IE浏览器时,如果使用get方式发请求,浏览器会先缓存之前
访问的数据,如果访问的地址不变,不会向服务器发请求。
解决方式1:使用post方式发请求。
解决方式2: 在请求地址后面添加一个随机数。
发送同步请求:
xhr.open('post','check_username.do',false);
function check_username(){
var xhr = getXhr();xhr.open('post','show.do',true);
xhr.setRequestHeader('content-type','application/x-www-form-urlencoded');
xhr.onreadystatechange=function(){
if(xhr.readState == 4){
var txt = xhr.responseText;alert(txt);
$('username_msg').innerHTML=txt;
}
};
xhr.send('username=' + $F('username'));
jQuery学习总结的更多相关文章
- jQuery学习之路(1)-选择器
▓▓▓▓▓▓ 大致介绍 终于开始了我的jQuery学习之路!感觉不能再拖了,要边学习原生JavaScript边学习jQuery jQuery是什么? jQuery是一个快速.简洁的JavaScript ...
- jquery学习(一)
简单的jquery学习,首先在页面引入jquery <!-- 引入jquery --> <script src="js/jquery-1.8.3.js" type ...
- jQuery学习笔记(一)jQuery选择器
目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQue ...
- jQuery 学习笔记
jQuery 学习笔记 一.jQuery概述 宗旨: Write Less, Do More. 基础知识: 1.符号$代替document.getElementById( ...
- jQuery学习笔记(一):入门
jQuery学习笔记(一):入门 一.JQuery是什么 JQuery是什么?始终是萦绕在我心中的一个问题: 借鉴网上同学们的总结,可以从以下几个方面观察. 不使用JQuery时获取DOM文本的操 ...
- jQuery学习笔记 - 基础知识扫盲入门篇
jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...
- 很不错的jQuery学习资料和实例
这些都是学习Jquery很不错的资料,整理了一下,分享给大家. 希望能对大家的学习有帮助. 帕兰 Noupe带来的51个最佳jQuery教程和实例, 向大家介绍了jQuery的一些基本概念和使用的相关 ...
- jquery学习以及下载链接
jquery学习链接 http://www.w3school.com.cn/jquery/jquery_intro.asp jquery 脚本库下载链接 http://jquery.com/downl ...
- 转载最佳JQuery学习网站
转载文章,原出处: http://www.gbin1.com/technology/jquery/learningjquerywebsites/ jQuery是目前最流行的 JavaScript ...
- JQuery学习笔记--01
JQuery使用的话,必做的一下件事就是下载JQuery库,才可以使用下载地址:http://jquery.com/ 下面就是引用JQuery库了: <script type="tex ...
随机推荐
- 自定义BadgeView
-(instancetype)initWithFrame:(CGRect)frame{ if (self=[super initWithFrame:frame]) { self.u ...
- AppFog免费云空间申请及安装wordpress(图文教程)
AppFog是一家提供运算平台的服务,用户可以在上面搭建自己的Web App.原本它的名字为PHPFog,但在采用了Cloud Foundry的代码作为核心,支持多个编程语言后,选择了更名.AppFo ...
- 手把手教你使用PS切图
http://blog.csdn.net/jiangwei0910410003/article/details/41627565
- SpringMVC 处理数据模型
处理模型数据 Spring MVC 提供了以下几种途径输出模型数据: ModelAndView: 处理方法返回值类型为 ModelAndView 时, 方法体即可通过该对象添加模型数据 Map 及 M ...
- Java系列笔记(2) - Java RTTI和反射机制
目录 前言 传统的RTTI 反射 反射的实现方式 反射的性能 反射与设计模式 前言 并不是所有的Class都能在编译时明确,因此在某些情况下需要在运行时再发现和确定类型信息(比如:基于构建编程,),这 ...
- 简单尝试利用vultr vps自架PPTP上网用于工作学习需要
因为学习和工作的需要用到登陆海外网站查阅相关的资料和文档,之前有需要使用的时候是问网友索要的账户登录本地电脑拨号的,但是老是跟别人要还是不好,决定自己尝试搭建一个长期使用.看到有不少的介绍提到VULT ...
- java中Jbutton常用设置
. 对JButton大小的设置 ——因为JButen是属于小器件类型的,所以一般的setSize不能对其惊醒大小的设置,所以一般我们用 button.setPreferredSize( ...
- 如何使用.NET开发全版本支持的Outlook插件产品(一)——准备工作
这半年一直在做Outlook的插件,因为不会VC++,所以想找一款基于.NET,用C#开发Outlook插件的技术方案.没想到,光技术选型这件事,就用各种技术手段验证了将近一个月,还花费了大量的精力做 ...
- C# SQLite编程总结
1.如果自己手动创建了数据库和字段,则不需要再创建table,基本流程: 1)SQLiteConnectionStringBuilder sb = new SQLiteConnectionString ...
- x.2
某些原因,和女朋友分手了,难过 订的M18XR3居然提前了半个多月到货,开心 想想一个人的孤单,还是有点难过 转眼间人生已经过去小半,剩下的除去苟延残喘20年,也就不到20年时间蹦跶.都说人生如戏,既 ...