JQuery
jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
JavaScript
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。
联系与区别
JQuery对象是通过**$符号**来获得的,例如 div1=$("#div1");从本质上来说,也是js代码,由JQuery获取到的也可以成为JavaScript对象
但是呢,通过$符号来获得的jq对象和通过js代码原生的方式获取的js对象是有区别的,但是他们也有一些联系,可以相互转换例如:
<body>
<div id="div1">div1...</div>
<div id="div2">div2...</div>
</body>
1.通过js来获取名叫div的所有html元素对象
var divs = document.geiElementsByTagName("div");
获得了div元素对象的集合,在js中可以当做数组来操作,可以遍历divs
2.通过jq来获取名叫div的所有html元素对象
var $divs = $("div");
这两个对象是有些区别的,分别用alert弹出上面两个元素集合
可以看到,divs弹出的是一个对象集合
而$divs弹出的是
所以说两个在字符串的表示形式上就是有区别的
相同点:
他们获取的元素对象都可以当做数组使用,也就是说可以通过**.length**属性来获取元素个数或数组长度
接下来说本质的区别:
1.JQuery对象在操作时,更加方便
例如:
对divs中的所有的div的标签体内容变为"aaa"
for(var i=0;i<divs.length;i++){
divs[i].innerHTML = "aaa";
}
对$divs中的所有的div的标签体内容变为"bbb",使用jq的方式,不需要遍历,直接调用jq方法即可
$divs.html("bbb");
所以说,jq比js用起来方便很多
2.jq对象和js对象的方法是不通用的
jq对象不能调用js对象的.innerHTML
3.两者相互转换
jq–>js : jq对象[索引] 或者 jq对象.get(索引)
js–>jq : $(js对象)
例如:将$divs中的jq对象转换成js对象
$divs[0].innerHTML = "ddd";
或者
$divs.get(1).innerHTML = "eee";
例如:将divs中的js对象转换成jq对象
$(divs[i]).html("ccc");
好啦,希望大家熟悉了,将来可能将js对象转换成jq对象来增强js对象的功能
若是两个要相互调用的话,要先进行转换