1.Prototype
2.Dojo
3.ExtJs
4.MooTools
5.jQuery
jQuery强调的理念是写的少,做的多(write less,do more).jQuery独特的选择器,链式操作,事件处理机制和封装完善的Ajax都是其他JavaScript库望尘莫及的.概括起来,jQuery有以下优势.
1.轻量级;
2.强大的选择器;
3.出色的DOM操作的封装;
4.可靠的事件处理机制;
5.完善的Ajax;
6.不污染顶级变量;
7.出色的浏览器兼容性;
8.链式操作方式;
9.隐式迭代;
10.行为层与结构层的分离;
11.丰富的插件支持;
12.完善的文档;
13.开源;
jQuery拥有强大的选择器,出色的DOM操作,可靠的时间处理,完善的兼容性和链式操作等;
用$(#id)取得的jQuery对象并非dom对象,两者并非等价:
jQuery和DOM对象要区分开,jQuery对象是jQuery独有的.如果一个对象是jQuery对象,那么使用jQuery里面的方法,如:$("#as").html();
这段代码等同于:document.getElementById("as").innerHTML;在jQuery中无法使用DOM中的方法,但jQuery对象提供了一套更加完善的工具用于操作DOM。
jQuery对象和DOM对象的相互转换:
在讨论jQuery对象和DOM对象的相互转换之前,先约定好定义变量的风格.如果获取的对象是jQuery对象,那么在变量前加上$.
jQuery变量定义: var $vr=jquery 对象;
DOM变量的定义: var vr=DOM 对象;
1.如果jQuery没有封装想要的方法,那就不得不将jQuery对象转换成DOM对象了.处理方式:
(1)jQuery对象转换成DOM对象,jQuery对象是一个数组对象.即[index]和get[index],代码:
var $cc = $("#cc"); //jquery对象,
var cc = $cc[0]; //dom对象
alert(cc.checked);//检测checked是否被选中。
(2)jQuery本身提供的对象,通过get[index]方法得到相应DOM对象。
var $cc = $("#cc"); //jquery对象
var cc =$cc.get(0); //dom对象
alert(cc.checked);//检测checked是否被选中。
2.将DOM转换成jQuery对象,用$()把DOM对象包起来就可以获得一个jQuery对象了,方式为:$(DOM对象)。
var cr=document.getElementById("cc"); //dom对象
var $cr= $(cr); //jQuery对象
转换后就任意使用jQuery了.
(注意:平时使用的jQuery对象都是$()函数制造出来的,$()函数是Jquery的制造工厂.)