不是书评是个人备份摘录
一个jquery的参考文档:
http://jquery-api-zh-cn.googlecode.com/svn/trunk/index.html
第一章:认识jquery
javascript程序库的诞生是为了简化javascript的开发,javascript程序库封装了很多预定义的对象和实用函数,能帮助轻松建立交互并且兼容各大浏览器。
jquery的优势:轻量级(30KB左右)、强大的选择器、出色的DOM操作的封装(封装了大量常用DOM操作)、可靠地事件处理机制、完善的Ajax(jquery讲所有的ajax操作封装到一个函数$.ajax()里)、不污染顶级变量、出色的浏览器兼容性、链式操作、隐式迭代、行为层与结构层分离、丰富的插件支持、完善的文档、开源。
$就是jquery的一个简写形式。
jquery对象和DOM对象的区别:DOM(文档对象模型)每一份DOM都可以表示成一棵树,DOM对象可以使用javascript方法。jquery对象就是通过jquery包装DOM对象产生的对象。jquery对象是jquery独有的。在jquery对象中无法使用DOM对象的任何方法,DOM对象也不能使用jquery里的方法。
jquery对象转化为DOM对象方法:var $cr=$("#cr");var cr=$cr[0] / var $cr=$("#cr");var cr=$cr.get(0);
DOM对象转化为jquery对象方法:
var cr=document.getElementById("cr");
var $cr=$(cr);
解决jquery与其他库的冲突可以用jQuery.noConflict()函数。
--------------------------------------------------------------
第二章:jquery选择器
选择是jquery的根基。jquery选择器继承了css选择器风格。
jquery选择器分为:
基本选择器——通过元素id,class和标签名等查找DOM元素。
层次选择器——通过元素之间的层次关系获取特定元素。例如后代元素、子元素、相邻元素和同辈元素等。
$("a b")选取a元素里的所有后代b元素
$("a>b")选取a元素下的子元素b,这里是直接后代关系
$("a+b")选取紧邻在a元素后的b元素(同辈元素),可用next()方法代替
$("a~b")选取a元素后的所有同辈元素b,可用nextAll()方法代替
过滤选择器——选择器以一个冒号(:)开头,冒号前没有空格的。分为
基本过滤、
:first/:last/:not(selector)/:even/:odd/:eq(index)/:gt(index)/:lt(index)/:header/:animated/:focus
内容过滤、
主要体现在他所包含的的子元素或文本内容上:contains(text)/:empty/:has(selector)/:parent、
可见性过滤、
:hidden/:visible
属性过滤、
通过元素属性来获取相应的元素
子元素过滤、
获取的都是集合,:nth-child()选择器是常用的子元素过滤器,选取的是每个父元素下的子元素,索引值从1开始。:first-child/:last-child/:only-child
表单对象属性过滤选择器、
针对所选择的的表单元素进行过滤
:enabled/:disabled(冒号前有空格):checked/:selected
表单选择器、
:input/:text/:password/:radio/:checkbox/:submit/:image/:reset/:button/:file/:hidden
选择器中有特殊符号用转义符号\进行转义
filter()方法和find()方法的区别:find()会在元素内寻找匹配元素,filter()则是筛选元素,一个针对他的子集操作,一个则是对自身集合元素进行筛选。
--------------------------------------------------------------------
第三章:jquery中的DOM操作
DOM操作分为三个方面:DOM Core(核心)、HTML-DOM和CSS-DOM.
每一张网页都可以用DOM表示出来。
----------------------------------------------------------------------
第四章:jquery中的事件和动画
is()方法判断元素是否显示
合成事件有两个:hover()-模拟鼠标悬停事件/toggle()-模拟鼠标连续点击事件
事件冒泡(由内到外的响应内部事件),停止事件冒泡的方法有stopPropagation()方法:event.stopPrapagation();
阻止默认行为可以用preventDefault()方法;同事阻止冒泡和默认行为可以返回false;
event.pageX和event.pageY可以获取到光标相对于页面的x坐标和y坐标。
stop()方法停止元素的动画、delay()方法延迟元素的动画。
动画方法概括:hide()/show()/fadeIn()/fadeOut()/slideUp()/slideDown()/animate()/toggle()/slideToggle()/fadeTo()/fadeToggle().
--------------------------------------------------------------------------
第五章:jquery对表单、表格的操作及更多应用
--------------------------------------------------------------------------
第六章:jquery与ajax的应用
ajax全称为“asynchronous javascript XML”异步javascript和XML.
ajax的优势:
不需要插件支持/优秀的用户体验/提高web程序的性能/减轻服务器和带宽的负担。
ajax的不足:
浏览器对XMLHttpRequest对象的支持度不足/破坏浏览器前进、后退按钮的正常功能/对搜索引擎的支持的不足/开发和调试工具的缺乏.
ajax的核心是XMLHttpRequest对象,它是实现ajax的关键,发送意不请求、接收响应及执行回调都是通过它来完成的。
第九章:jquery Mobile
jquery Mobile是用来填补jquery在移动设备应用上的缺憾的一个新项目。它基于jquery框架并使用了HTML5和CSS3这些新的技术,除了能提供很多基础的移动页面元素开发功能外,框架自身还提供了很多可供扩展的API以便于开发人员在移动应用上使用。
jqueryMObile的策略可总结为:创建一个在常见智能手机/平板电脑浏览器领域内能统一用户界面的顶级javascript库,jQuery Mobile有以下特性:
1.基于jquery构建。
2.兼容绝大部分手机平台。
3.轻量级的库。
4.模块化结构。
5.HTML5标记驱动的配置。
6.渐进增强原则。
7.响应设计。
8.强大的ajax的导航系统。
9.易用性。
10.支持触摸和鼠标事件。
11.统一的UI组件。
12.强大的主体化框架。
jquery入门书籍
《锋利的jQuery》热门书评
-
当下市面上关于jQuery中文书中算是比较好的
12有用 3无用 三月的雪 2009-09-19
看过几本关于jQuery的中文书,这其中包括一些“野书”和“名著”(《learning jQuery》《jQuery in Action》之类的翻译版),总体上感觉这本《锋利的jQuery》比较适合拿来当做jQuery的第一本书。作者是非常年轻的一名前...
-
读这本书,就像吃棉花糖
7有用 2无用 东汉末年 2013-05-22
我感觉读这本书就像吃棉花糖一样,看着挺大,实际分量只能呵呵。花了十天左右读完,每天晚上看三四个小时,之前对jQuery一无所知,所以大部分代码都敲了一遍。读完之后,没有及时练习,以很快的速度在遗忘,最后只对CSS选择器、链式操作印象深刻。至少一半的方法使用时还得翻看官方手册,看例子。然后准备不用插件...
-
属于就诶少jQuery里面比较好的一本
5有用 0无用 Hey There 2010-04-06
jQuery说白了实在是很简单,而这本书就是说白jQuery的书籍。所以本书属于非常白话的讲解jQuery的书籍,目前我看了下国内做的好的jQuery书籍,估计就这一本了。反证是入门推荐的书籍把,有人说这本书太简单了,是的本来就是入门的书籍。jQuery你要是要用得好,那么自己去看doc好了。...
-
锋利的jQuery
4有用 0无用 米随随 2013-11-27
优点:轻量、选择器、DOM操作、事件处理、兼容、链式操作理念:write less, do more.PS:windows.onload 与 $(document).ready() 区别代码风格:1、链式操作风格(同级多行、子级缩进),2、注释jQuery对象与DOM对象:1、方法不通用,2、可互转...
-
jquery入门书籍
2有用 1无用 chen7 2013-12-24
不是书评是个人备份摘录一个jquery的参考文档:http://jquery-api-zh-cn.googlecode.com/svn/trunk/index.html第一章:认识jqueryjavascript程序库的诞生是为了简化javascript的开发,javascript程序库封装了很多预...