JQuery对象和DOM对象的区别与转换

刚开始学习JQuery,经常分不清楚哪些是JQuery对象,哪些是DOM对象,了解它们之间的关系是很有必要的。

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

1)  DOM对象

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

DOM都可以表示成一个树。

如:

<html>
    <head>
       <title>标题内容</title>
   </head>
    <body>
         <p>测试文本</p>
   </body>
</html>

上面<html>是DOM树的根元素,其他是根下面的元素(<head>、<body>)等

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对象的值

如:

<script>
   $(document).ready(function(){
        var domObj = document.getElementById("mr");
         alert("使用DOM方法获取节点mr的内容:" + domobj.innerHTML);
         var $jqueryObj = $(domObj);   //转化为Jquery对象
         alert("使用JQuery方法获取节点mr的内容:" + $jqueryObj.html());
   })
</script>

 

posted @ 2017-12-05 16:35  小小邪  阅读(433)  评论(0编辑  收藏  举报