javascript跟jquery两者有区别吗
这篇文章主要讲解了“javascript跟jquery两者有区别吗”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript跟jquery两者有区别吗”吧!
成都创新互联公司主要从事网站建设、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务兰考,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
本教程操作环境:windows7系统、javascript1.8.5&&jquery1.10.0版、Dell G3电脑。
一、本质上的区别
1.JavaScript 是通过标签插入到HTML页面,可由所有的现代浏览器执行的一种轻量级的编程语言。
2.JQuery是一个JavaScript函数库。或者说是JavaScript中最流行的一种框架。
使用JQuery首先要在 HTML 代码最前面加上对 jQuery 库的引用,比如:
库文件既可以放在本地,也可以直接使用知名公司的 cdn,好处是这些大公司的 CDN 比较流行,用户访问你网站之前很可能在访问别的网站时已经缓存在浏览器中了,所以能加快网站的打开速度。另外一个好处是显而易见的,节省了网站的流量带宽。例如:
//Google 或者: //jQuery 官方
二、语法上的差异
1.操作元素节点的方法不同
a.JavaScript使用
getElement系列、query系列
- 哈哈
- 啦啦
- 呵呵
- 嘿嘿
- 呵呵
- 嘿嘿
b.JQuery使用
大量的选择器同时使用$()包裹选择器
- 哈哈
- 啦啦
- 呵呵
- 嘿嘿
- 呵呵
- 嘿嘿
2.操作属性节点的方法不同
a.JavaScript使用
getAttribute("属性名") 、 setAttribute("属性名","属性值")
- 哈哈
b.JQuery使用
.attr()传入一个参数获取,传入两个参数设置
.prop()
prop和attr一样都可以对文本的属性进行读取和设置;
两者的不同 在读取checked,disabled,等属性名=属性值的属性时
attr返回属性值或者undefined,当读取的checked属性时不会根据是否选中而改变
prop返回true和false 当读取的checked属性时会根据是否选中而改变
也就是说attr要取到的属性必须是在标签上写明的属性,否则不能取到
- 哈哈
3.操作文本节点的方法不同
a.JavaScript使用
innerHTML:取到或设置一个节点的HTML代码,可以取到css,以文本的形式返回
innerText:取到或设置一个节点的HTML代码,不能取到css
value:取到input[type='text']输入的文本
- 嘿嘿
- 嘿嘿
b.JQuery使用
.html()取到或设置节点中的html代码
.text()取到或设置节点中的文本
.val()取到或设置input的value属性值
- 嘿嘿
- 嘿嘿
4.操作css样式的方法不同
JavaScript:
* 1.使用setAttribute设置class和style * document.getElementById("first").setAttribute("style","color:red"); * 2.使用.className添加一个class选择器 * document.getElementById("third").className = "san"; * 3.使用.style.样式直接修改单个样式。注意样式名必须使用驼峰命名法 * document.getElementById("four_times").style.fontWeight = "900"; * 4.使用.style或.style.cssText添加一串行级样式: * document.getElementById("five_times").style = "color: blue;";//IE不兼容 * document.getElementById("six_times").style.cssText = "color: yellow;font-size : 60px;";
JQuery:
$("#p2").css("color","yellow"); $("#p2").css({ "color" : "white", "font-weight" : "bold", "font-size" : "50px", });
5.操作层次节点
JavaScript:
*1.childNodes:获取当前节点的所有子节点(包括元素节点和文本节点) * children:获取当前节点的所有元素子节点(不包括文本节点) *2.parentNode:获取当前节点的父节点 *3.firstChild:获取第一个元素节点,包括回车等文本节点 * firstElementChild:获取第一个元素节点,不包括回车节点 * lastChild、lastElementChild 同理 *4.previousSibling:获取当前元素的前一个兄弟节点 * previousElementSibling::获取当前元素的前一个兄弟节点 * nextSibling、nextElementSibling
JQuery:
1.提供了大量的选择器:
:first-child
:first-of-type1.9+
:last-child
:last-of-type1.9+
:nth-child
:nth-last-child()1.9+
:nth-last-of-type()1.9+
:nth-of-type()1.9+
:only-child
:only-of-type1.9+
2.除此之外也提供了对应的函数:
first()
last()
children()
parents()
parent()
siblings()
6.给一个节点绑定事件
JavaScript:
使用了Dom0事件模型和Dom2事件模型,具体内容见我上一篇博客
JQuery:
①.事件绑定的快捷方式
②:使用on进行事件绑定
7.JQuery的文档就绪函数和window.onload的区别
*①.window.onload必须等待网页资源(包括图片等)全部加载完成后,才能执行; * 而文档就绪函数只需要等到网页DOM结构加载完成后,即可执行 *②.window.onload在一个页面中,只能写一次,写多次会被最后一次覆盖 * 而文档就绪函数在一个页面中可以有N个
三、JavaScript对象和JQuery对象的方法不能混用。
1.JavaScript对象和JQuery对象
① 使用$("")取到的节点为JQuery对象,只能调用JQuery方法,不能调用JavaScript方法; * $("#p").click(function(){})√ * $("#p").onclick = function(){}× 使用JQuery对象调用JavaScript方法 * * 同理,使用、document.getElement系列函数取到的对象为JavaScript对象,也不能调用JQery函数
2.JavaScript对象和JQuery对象互转
*① JQuery ---> JavaScript :使用get(index)或者[index]选中的就是JavaScript对象 * $("p").get(0).onclick = function(){} * $("p").[0].onclick = function(){} * ② JavaScript ---> JQuery :使用$()包裹JavaScript对象 (我们发现JQuery不管获得几个对象都是一个数组,可以直接给整个数组都添加某一事件) * var p = document.getElementById("p"); * $(p).click(function(){});
感谢各位的阅读,以上就是“javascript跟jquery两者有区别吗”的内容了,经过本文的学习后,相信大家对javascript跟jquery两者有区别吗这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!
网页名称:javascript跟jquery两者有区别吗
网站链接:http://ybzwz.com/article/pddgjg.html