DOM对象与JQUERY对象的相互转化

普通处理,通过标准JavaScript处理:

1 var p = document.getElementById(‘imooc‘)

2 p.innerHTML = ‘您好!学习jQuery才是最佳的途径‘;

3  p.style.color = ‘red‘;

通过原生DOM模型提供的document.getElementById(“imooc”) 方法获取的DOM元素就是一个DOM对象,再通过innerHTML与style属性处理文本与颜色。

jQuery的处理:

1 var $p = $(‘#imooc‘);
3 $p.html(‘您好!通过学习jQuery才是最佳的途径‘).css(‘color‘,‘red‘);

通过$(‘#imooc‘)方法会得到一个$p的jQuery对象,$p是一个类数组对象。这个对象里面包含了DOM对象的信息

然后封装了很多操作方法,调用自己的方法html与css,得到的效果与标准的JavaScript处理结果是一致的。

通过标准的JavaScript操作DOM与jQuyer操作DOM的对比,我们不难发现:

通过jQuery方法包装后的对象,是一个类数组对象。它与DOM对象完全不同,唯一相似的是它们都能操作DOM。

通过jQuery处理DOM的操作,可以让开发者更专注业务逻辑的开发,而不需要我们具体知道哪个DOM节点有那些方法,也不需要关心不同浏览器的兼容性问题

我们通过jQuery提供的API进行开发,代码也会更加精短。

jQuery是一个类数组对象,而DOM对象就是一个单独的DOM元素。

如何把jQuery对象转成DOM对象?

利用数组下标的方式读取到jQuery中的DOM对象

HTML代码


1

2

3

4

5

6

7

8

9

10

11

12

13

<div>元素一</div>

<div>元素二</div>

<div>元素三</div>

JavaScript代码

var $div = $(‘div‘) //jQuery对象

var div = $div[0] //转化成DOM对象

div.style.color = ‘red‘ //操作dom对象的属性

用jQuery找到所有的div元素(3个),因为jQuery对象也是一个数组结构,可以通过数组下标索引找到第一个div元素,通过返回的div对象,调用它的style属性修改第一个div元素的颜色。这里需要注意的一点是,数组的索引是从0开始的,也就是第一个元素下标是0

通过jQuery自带的get()方法

jQuery对象自身提供一个.get() 方法允许我们直接访问jQuery对象中相关的DOM节点,get方法中提供一个元素的索引:


1

2

3

4

5

var $div = $(‘div‘) //jQuery对象

var div = $div.get(0) //通过get方法,转化成DOM对象

div.style.color = ‘red‘ //操作dom对象的属性

  

其实我们翻开源码,看看就知道了,get方法就是利用的第一种方式处理的,只是包装成一个get让开发者更直接方便的使用。

DOM对象转化成jQuery对象

相比较jQuery转化成DOM,开发中更多的情况是把一个dom对象加工成jQuery对象。$(参数)是一个多功能的方法,通过传递不同的参数而产生不同的作用。

如果传递给$(DOM)函数的参数是一个DOM对象,jQuery方法会把这个DOM对象给包装成一个新的jQuery对象

通过$(dom)方法将普通的dom对象加工成jQuery对象之后,我们就可以调用jQuery的方法了

HTML代码


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<div>元素一</div>

<div>元素二</div>

<div>元素三</div>

JavaScript代码

var div = document.getElementsByTagName(‘div‘); //dom对象

var $div = $(div); //jQuery对象

var $first = $div.first(); //找到第一个div元素

$first.css(‘color‘, ‘red‘); //给第一个元素设置颜色

通过getElementsByTagName获取到所有div节点的元素,结果是一个dom合集对象,不过这个对象是一个数组合集(3个div元素)。

通过$(div)方法转化成jQuery对象,通过调用jQuery对象中的first与css方法查找第一个元素并且改变其颜色。

-转载

时间: 2024-10-09 10:05:08

DOM对象与JQUERY对象的相互转化的相关文章

DOM对象和js对象以及jQuery对象的区别

一.DOM对象 文档对象模型简称DOM,是W3C组织推荐的处理可扩展置标语言的标准编程接口. DOM实际上是以面向对象方式描述的文档模型.DOM定义了表示和修改文档所需的对象.这些对象的行为和属性以及这些对象之间的关系. 通过DOM,可以访问所有的 HTML 元素,连同它们所包含的文本和属性.可以对其中的内容进行修改和删除,同时也可以创建新的元素. HTML DOM 独立于平台和编程语言.它可被任何编程语言诸如 Java.JavaScript 和 VBScript 使用. DOM对象,即是我们用

认识JQuery,JQuery的优势、语法、多库冲突、JS原生对象和JQuery对象之间相互转换和DOM操作,常用的方法

(一)认识JQuery  JQuery是一个JavaScript库,它通过封装原生的JavaScript函数得到一套定义好的方法    JQuery的主旨:以更少的代码,实现更多的功能 (二)JQuery的优势 1)可以像CSS一样访问和操作DOM 2)修改CSS控制页面外观 3)简化JS代码操作 4)事件代理更加容易 5)动画效果使用方便 6) Ajax技术更加完美 7)大量的基于Jquery的插件 8)可以自定义扩展功能插件 (三)JQuery的语法 格式:$(selector).actio

锋利的jQuery(1)——DOM对象与jQuery对象的转换

1.认识jQuery DOM对象:即文档对象模型 jQuery对象:通过jQuery包装DOM对象后产生的对象.这是jQuery对象所特有的,在jQuery对象中无法使用DOM对象的任何方法,同时DOM对象也不能使用jQuery对象的方法.(这也是我自己在写代码的时候经常弄混的一条) DOM对象和jQuery对象的互换:一般的在jQuery对象前面加上$ jQuery对象转换成DOM对象: Jquery对象是一个类似数组的对象,可以通过[index]的方法得到相应的DOM对象 //代码如下 va

[ jquery 过滤器 is(expr | jqObj | ele | function) ] 此方法用于在选择器的基础之上根据选择器、DOM元素或 jQuery 对象来检测匹配元素集合,如果有,则返回true

根据选择器.DOM元素或 jQuery 对象来检测匹配元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true. 如果没有元素符合,或者表达式无效,都返回'false'. '''注意:'''在jQuery 1.3中才对所有表达式提供了支持.在先前版本中,如果提供了复杂的表达式,比如层级选择器(比如 + , ~ 和 > ),始终会返回true 实例: <!DOCTYPE html> <html lang='zh-cn'> <head> <title&

JavaScript DOM对象和JQuery对象相互转换

1.分析源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="C

DOM对象与jquery对象有什么不同

jQuery对象和DOM对象使用说明,需要的朋友可以参考下. 1.jQuery对象和DOM对象 第一次学习jQuery,经常分辨不清哪些是jQuery对象,哪些是 DOM对象,因此需要重点了解jQuery对象和DOM对象以及它们之间的关系.DOM对象,即是我们用传统的方法(javascript)获得的对象,jQuery对象即是用jQuery类库的选择器获得的对象;代码如下: 1 var domObj = document.getElementById("id"); //DOM对象 2

锋利的jQuery——DOM对象与jQuery对象的区别

DOM对象 <h3>例子</h3> <p title="选择你喜欢的水果">你最喜欢的水果是?</p> <ul> <li>苹果</li> <li>橘子</li> <li>菠萝</li> </ul> <h3><p><ul><li>都是DOM对象,在javascript中可以使用getElementB

Dom对象和Jquery对象区别详解

js的写法:document.getElementById('save').disabled=true; 在jquery中我是这样写的$("#save").disabled = true;  为什么没效果呢 这个是典型的问题,其实因为$("#save")出来的其实是jQuery对象,而不是普通DOM对象  解决方法有2: 1,用JQ写法,$("#save").attr("disabled","true");

DOM对象和jQuery对象的相互转换

在学习jQuery的时候,有时候总是把DOM对象和jQuery对象弄混,用DOM对象去调用jQuery对象的方法,用jQuery对象的方法去调用DOM对象的方法,这是不可以的.其实这两种东西可以进行相互的转换,在使用的时候可以搭配使用.转换的过程十分的简单. 1.DOM对象转换为jQuery对象 对于一个DOM对象来说,要把它转换成jQuery对象只需要给DOM对象前加上$符号即可. 格式:$(DOM对象) 代码示例: var obj = document.getElementById("tex

DOM对象与jquery对象的互相转换

一開始总是对DOM对象和jQuery对象搞不清楚.如今对此做一下总结: DOM 对象:文档对象模型.每一份DOM都能够看作一棵树.像ul,li ol  dl  p  h1  等等都是DOM元素节点.能够通过js的getElementsByTagName  和 getElementById  来获取这些元素节点.像这样得到的DOM元素就是DOM对象. DOM对象能够使用javascript中的方法.如: var domObj = document.getElementById("id")