jquerydom对象,jquery的

JQuery对象和DOM对象的区别

一直以来对于通过jQuery方式获取的对象使不能直接使用JavaScript的一些方法的,开始的时候不理解,现在此案知道,原来jQuery

创新互联公司于2013年开始,先为万荣等服务建站,万荣等地企业,进行企业商务咨询服务。为万荣企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

获得的对象并不和我们平时使用getElementById获得的对象是一样的对象。所以一些新手就很迷惑,为什么${”#Element”}不能直接

innerHTML,这就是原因所在,解决方式请看下文。

jQuery对象与dom对象的转换

只有jquery对象才能使用jquery定义的方法。注意dom对象和jquery对象是有区别的,调用方法时要注意操作的是dom对象还是jquery对象。

普通的dom对象一般可以通过$()转换成jquery对象。

如:

$(document.getElementById("msg"))

则为jquery对象,可以使用jquery的方法。

由于jquery对象本身是一个集合。所以如果jquery对象要转换为dom对象则必须取出其中的某一项,一般可通过索引取出。

如:

$("#msg")[0],$("div").eq(1)[0],$("div").get()[1],$("td")[5]

这些都是dom对象,可以使用dom中的方法,但不能再使用Jquery的方法。

以下几种写法都是正确的:

$("#msg").html();

$("#msg")[0].innerHTML;

$("#msg").eq(0)[0].innerHTML;

$("#msg").get(0).innerHTML;

jQuery查找对象是按照标准的dom层级关系来查找的

如table中无论你是否有tbody,在查找子对象的时候都要按照table--tbody--tr的层级关系来查找

关于this

input name="testThis" type="text" onchange="textThis(this)" /

function textThis(obj)

{

//在引用自己用的this是dom对象

alert($(obj).val());

}

该this为dom对象

innerHTML和outerHTML

innerHTML设置或获取对象起始和结束标签内的HTML

outerHTML设置或获取对象及其内容的HTML形式

谈谈你对JQuery对象和DOM对象的理解,及其区别与联系

1、DOM对象和JQuery对象的区别

1) DOM对象

DOM是Document Object Model,即文档对象模型的缩写。DOM是以层次结构组织的节点或信息片段的集合,每一份

DOM都可以表示成一个树。

2) JQuery对象

JQuery对象是通过JQuery包装DOM对象后产生的对象,JQuery对象是独有的,可以使用JQuery的方法

如:

$('#test').html();

等价于DOM中的:

document.getElementById("test").innerHTML;

虽然JQuery对象是包装DOM对象后产生的,但是JQuery无法使用DOM对象的任何方法,同理,DOM对象也不能使用JQuery对象方法。

注:

$('#test') 这样获取的是JQuery对象,document.getElementById("test") 获取的是DOM对象,它们不是等价的。

2、DOM对象和JQuery对象的相互转换

1)JQuery对象转化为DOM对象

var $mr = $('#mr'); //JQuery对象var mr1 = $mr[0]; //DOM对象var mr2 = $mr.get(0); //DOM对象alert(mr1.value); //弹出DOM对象元素的值

2)DOM对象转化为JQuery对象

var mt = document.getElementById("mt"); //DOM对象var $mt = $(mr); //JQuery对象alert($mt.val()); //弹出JQuery对象的值

“JQuery对象”和“DOM对象”的区别?

1.jQuery对象和DOM对象

第一次学习jQuery,经常分辨不清哪些是jQuery对象,哪些是 DOM对象,因此需要重点了解jQuery对象和DOM对象以及它们之间的关系.

DOM对象,即是我们用传统的方法(javascript)获得的对象,jQuery对象即是用jQuery类库的选择器获得的对象;

复制代码 代码如下:

var domObj = document.getElementById("id"); //DOM对象

var $obj = $("#id"); //jQuery对象;

jQuery对象就是通过jQuery包装DOM对象后产生的对象,它是jQuery独有的。如果一个对象是

jQuery对象,那么就可以使用jQuery里的方法,例:

$("#foo").html(); //获取id为foo的元素内的html代码,html()是jQuery特有的方法;

上面的那段代码等同于:

document.getElementById("foo").innerHTML;

注意:在jQuery对象中无法使用DOM对象的任何方法。

例如$("#id").innerHTML 和$("#id").checked之类的写法都是错误的,可以用$("#id").html()和$("#id").attr ("checked")之类的 jQuery方法来代替。

同样,DOM对象也不能使用jQuery方法。学习jQuery开始就应当树立正确的观念,分清jQuery对象和DOM对象之间的区别,之后学习 jQuery就会轻松很多的。

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

在上面第一点说了,jquery对象和dom对象是不一样的!比如jquery对象不能使用dom的方法,dom对象不能使用jquery方法,那假如我 jquery没有封装我要的方法,那能怎么办呢?

这时我们可以将jquer对象转换成dom对象

jquery对象转换成 dom对象

jquery提供了两种方法将一个jquery对象转换成一个dom对象,即[index]和get(index)。可能有人会觉得奇怪,怎么是用下标呢,没错,jquery对象就是一个数组对象.

下面代码将演示一个jquery对象转换成dom对象,再使用dom对象的方法

复制代码 代码如下:

var $cr=$("#cr"); //jquery对象

var cr = $cr[0]; //dom对象 也可写成 var cr=$cr.get(0);

alert(cr.checked); //检测这个checkbox是否给选中

dom对象转换成jquery对象

对于一个dom对象,只需要用$()把dom对象包装起来,就可以获得一个jquery对象了,方法为$(dom对象);

复制代码 代码如下:

var cr=document.getElementById("cr"); //dom对象

var $cr = $(cr); //转换成jquery对象

转换后可以任意使用jquery中的方法了.

通过以上的方法,可以任意的相互转换jquery对象和dom对象.


文章标题:jquerydom对象,jquery的
URL网址:http://myzitong.com/article/dscdeod.html