jquery 就对javascript的一个扩展,封装,就是让javascript更好用,更简单,为了说明区别,下面与大家分享下JavaScript 与JQuery 常用方法比较
 
jquery 就对javascript的一个扩展,封装,就是让javascript更好用,更简单。人家怎么说的来着,jquery就是要用更少的代码,漂亮的完成更多的功能。JavaScript 与JQuery 常用方法比较

1、加载DOM区别

JavaScript: 
window.onload

function first(){ 
alert('first'); 

function second(){ 
alert('second'); 

window.onload = first; 
window.onload = second; 
//只会执行第二个window.onload;不过可以通过以下方法来进行改进: 
window.onload = function(){ 
first(); 
second(); 
}

Jquery: 
$(document).ready()

$(document).ready(){ 
function first(){ 
alert('first'); 

function second(){ 
alert('second'); 

$(document).ready(function(){ 
first(); 

$(document).ready(function(){ 
second(); 

//两条均会执行 
}

2、获取ID

JavaScript: 
document.getElementById('idName')

JQuery: 
$('#idName')

3、获取Class

JavaScript: 
JavaScript没有默认的获取class的方法

JQuery: 
$('.className')

4、获取TagName

JavaScript: 
document.getElementsByTagName('tagName')

JQuery: 
$('tagName')

5、创建对象并加入文档中

JavaScript: 
var para = document.createElement('p'); 
//创建一个p元素 
document.body.appendElement(para); 
//将p元素追加为body的lastchild子节点,如果想将新创建的p元素插入到已存在的某个元素之前,可以使用insertBefore()方法

JQuery:
JQuery提供了4种将新元素插入到已有元素(内部)之前或者之后的方法:append()、appendTo()、prepend()、prependTo()。 
格式:$( html ); 
eg,html代码: 
<p>World!</p> 
$('p').append('<b>Hello!</b>'); 
//输出:<p>World!<b>Hello!</b></p> 
$('<b>Hello!</b>').appendTo('p'); //输出:同上 
$('p').prepend('<b>Hello!</b>'); 
//输出:<p><b>Hello!</b>World! </p> 
$('<b>Hello!</b>').prependTo('p'); 
//输出:同上

6、插入新元素

JavaScript: 
insertBefore() 语法格式: 
parentElement.insertBefore(newElement,targetElement) 
eg, 将一个img元素插入一个段落之前。

html代码: 
<img src="data:image.jpg" id="imgs" /> 
<p>这是一段文字</p>

JavaScript代码: 
var imgs = document.getElementById('imgs'); 
var para = document.getElementsByTag('p'); 
para.parenetNode.insertBefore(imgs,para);

JQuery: 
JQuery提供了4种将新元素插入到已有元素(外部)之前或者之后的方法:after()、insertAfter()、before()、insertBefore()。 
格式:$( html ); 
eg,html代码: 
<p>World!</p>

JQuery代码 
$('p').after('<b>Hello!</b>'); 
//输出:<p>World! </p><b>Hello!</b> 
$('<b>Hello!</b>'). insertAfter ('p'); 
//输出:同上 
$('p').before('<b>Hello!</b>'); 
//输出:<b>Hello!</b><p>World! </p> 
$('<b>Hello!</b>').insertBefore('p'); 
//输出:同上

7、复制节点

JavaScript: 
reference = node.cloneNode(deep) 
这个方法只有一个布尔型的参数,它的可取值只能是true或者false。该参数决定是否把被复制节点的子节点也一同复制到新建节点里去。

JQuery: 
clone() //复制节点后,被复制的新元素并不具有任何行为 
clone(true) //复制节点内容及其绑定的事件 
备注:该方法通常与appendTo()、prependTo()等方法结合使用。

8、删除节点

JavaScript: 
reference = element.removeChild(node) 
removeChild()方法将一个给定元素里删除一个子节点

JQuery: 
remove(); 
remove()方法作用就是从DOM中删除所有匹配的元素,remove()方法还可以与其他的过滤选择器结合使用,非常方便。 
eg,将ul li下的title不是"Hello"的li移除: 
$('ul li').remove(li[title!='Hello']); 
empty(); 
empty()方法作用是清空节点。

9、包裹节点

JavaScript: 
JavaScript暂无

JQuery: 
wrap() //将匹配元素用其他元素的结构化标记单独包裹起来 
wrapAll() //将所有匹配的元素用一个元素包裹起来 
wrapInner() //将匹配元素的子内容用其他结构化的标记包裹起来

10、属性操作:设置属性节点、查找属性节点

JavaScript: 
document.getElementsByTagName('tagName')

JQuery: 
JQuery中设置和查找属性节点都是:attr() 。 
$('p').attr('title'); //获取p元素的title属性; 
$('p').attr('title','My title'); //设置p元素的title属性 
$('p').attr('title':'My title','class':'myClass'); //当需要添加多个属性时,可以用"名:值"对的形式,中间用逗号隔开。

11、替换节点

JavaScript: 
reference = element.replaceChild(newChild,oldChild) 
该方法是将一个给定父元素里的一个子节点替换为另外一个节点。

JQuery: 
replaceWith()、replaceAll() 
eg: 
<p>hello</p> 
想替换为: 
<h2>Hi</h2>

JQuery代码: 
$('p') .replaceWith('<h2>Hi</h2>'); 
或者可以写成: 
$('<h2>Hi</h2>').replaceAll('p');

12、CSS-DOM操作

JavaScript: 
格式:element.style.property 
CSS-DOM能够读取和设置style对象的属性,其不足之处是无法通过它来提取外部CSS设置的样式信息,而JQuery的.css()方法是可以的。 
注意点:CSS中的如"font-size"这样有"-"的,要使用首字母小写的驼峰式表示,如fontSize。

JQuery: 
格式:$(selector).css() 
css()方法获取元素的样式属性 
此外,JQuery还提供了height()和width()分别用来获取元素的高度和宽度(均不带单位),而css(height)、css(width)返回高宽,且带单位。

JQuery和JavaScript常用方法的一些区别的更多相关文章

  1. JQuery笔记:JQuery和JavaScript的联系与区别

    来源:http://www.ido321.com/1019.html ps:LZ觉得这个标题有点大了,超出了能力范围,不喜勿碰.目前只记录LZ能力范围内的,日后持续补充. 一.JQuery对象和DOM ...

  2. JQuery 和JavaScript的区别

    Google提供的jquery包: http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js jQuery官方的jquery包: ...

  3. jQuery 是javascript的一个库(常用插件、处理器)

    jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuery就是javascript的一个库,把我 ...

  4. JQuery对象与DOM对象的区别与转换

      1.jQuery对象和DOM对象的区别 DOM对象,即是我们用传统的方法(javascript)获得的对象,jQuery对象即是用jQuery类库的选择器获得的对象; eg: var domObj ...

  5. jQuery中.attr()和.prop()的区别

    之前学习jQuery的时候,学习到了两种取得标签的属性值的方法:一种是elemJobj.attr(),另一种是elemJobj.prop().而在学习JS的时候,只有一种方法elemObj.getAt ...

  6. jQuery学习-----(二)JQuery对象与DOM对象的区别与转换

    1.jQuery对象和DOM对象的区别 DOM对象,即是我们用传统的方法(javascript)获得的对象,jQuery对象即是用jQuery类库的选择器获得的对象; eg: var domObj = ...

  7. 【二】jquery之基础概念与jquery对象与dom对象的区别及混合使用

    一:jquery基本概念 1.jquery是一个javascript框架,它是一个轻量级的js库 2.当下流行的js库有: jquery MooTools Prototype 3.$(ducoment ...

  8. Jquery中.attr()和.data()的区别

    $.attr()和$.data()本质上属于DOM属性和Jquery对象属性的区别. 一个简单的例子 <!DOCTYPE html> <html> <head> & ...

  9. jQuery中first-child与first选择器区别

    1.first-child first-child为每个父级元素匹配第一个子元素,可以匹配出多个元素: 示例代码: <!DOCTYPE html> <html lang=" ...

随机推荐

  1. Python内置的一个用于命令项选项与参数解析的模块argparse

    一.argparse简单使用 我们先来看一个简单示例.主要有三个步骤: 创建 ArgumentParser() 对象 调用 add_argument() 方法添加参数 使用 parse_args() ...

  2. 进程、线程、协程、CPU

    进程.线程.CPU 进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.或者说进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进 ...

  3. curl命令,curl实现post,curl监控网页shell脚本,curl多进程实现并控制进程数,

    cURL > Docs > Tutorial:  http://curl.haxx.se/docs/httpscripting.html 下载单个文件,默认将输出打印到标准输出中(STDO ...

  4. java笔试之查找组成一个偶数最接近的两个素数

    任意一个偶数(大于2)都可以由2个素数组成,组成偶数的2个素数有很多种情况,本题目要求输出组成指定偶数的两个素数差值最小的素数对. package test; import java.util.Sca ...

  5. JS对象 String 字符串对象定义字符串的方法就是直接赋值。比如: var mystr = "I love JavaScript!"

    String 字符串对象 在之前的学习中已经使用字符串对象了,定义字符串的方法就是直接赋值.比如: var mystr = "I love JavaScript!" 定义mystr ...

  6. 【2-SAT】[JSOI2010]满汉全席

    感觉方法和题解差不多,但是题解写的好烦啊...也不是烦,就是很复杂 这里建议开一个数组表示当前这个点选或者不选的编号,这样之后自己理思路也会清楚一点 然而我调了一个小时才发现我是Tarjan写错了.. ...

  7. Leetcode241.Different Ways to Add Parentheses为运算表达式设计优先级

    给定一个含有数字和运算符的字符串,为表达式添加括号,改变其运算优先级以求出不同的结果.你需要给出所有可能的组合的结果.有效的运算符号包含 +, - 以及 * . 示例 1: 输入: "2-1 ...

  8. PHP跨服务器提交数据

    关于类似的问题,百度上一搜一大堆,这只是我自己实际用过的两个方法,不多BB直接上代码 1.第一种: 2.第二种 可以随意切换POST和GET提交方式

  9. 模拟MySQL命令

    staff_table 1,Alex Li,22,13651054608,IT,2013-04-01 2,Jack Wang,30,13304320533,HR,2015-05-03 3,Rain L ...

  10. agc38C LCMs

    https://atcoder.jp/contests/agc038/tasks/agc038_c 题意:给\(a_i\),求\(\sum_{i=1}^n\sum_{j=i+1}^nlcm(a_i,a ...