02_DOM对象和JQuery对象的区别

本文详细解释了DOM对象与jQuery对象的概念、特点,并介绍了如何将两者互相转换。通过实例展示了如何使用jQuery方法操作DOM元素,以及在jQuery环境中无法使用的DOM方法。最后,演示了jQuery方式和DOM方式在实际代码中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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对象和DOM对象的互相转换

1 jquery提供了两种方法将一个jquery对象转换成一个dom对象,即[index]和get(index)。

var $cr=$("#cr"); //jquery对象
var cr = $cr[0]; //dom对象 也可写成 var cr=$cr.get(0);
alert(cr.checked); //检测这个checkbox是否给选中

2 dom对象转换成jquery对象

var cr=document.getElementById("cr"); //dom对象
var $cr = $(cr); //转换成jquery对象

 ps: 平时用到的jquery对象都是通过$()函数制造出来的,$()函数就是一个jquery对象的制造工厂.
建议:如果获取的对象是 jquery对象,那么在变量前面加上$,这样方便容易识别出哪些是jquery对象 

 

========================================================

  jQuery方式

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>1-6-1</title>
<!-- 引入 jQuery -->
<script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
<script type="text/javascript">
//等待dom元素加载完毕.
$(document).ready(function(){
	var $cr = $("#cr");  //jQuery对象
	$cr.click(function(){
		if($cr.is(":checked")){ //jQuery方式判断
			alert("感谢你的支持!你可以继续操作!");
		}
	})
});
</script>
</head>
<body>
<input type="checkbox" id="cr"/><label for="cr">我已经阅读了上面制度.</label>
</body>
</html>

 DOM方式

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>1-6-2</title>
<!-- 引入 jQuery -->
<script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script>
<script type="text/javascript">
//等待dom元素加载完毕.
$(document).ready(function(){
	var $cr = $("#cr");  //jQuery对象
	var cr = $cr.get(0); //DOM对象,获取 $cr[0]
	$cr.click(function(){
		if(cr.checked){ //DOM方式判断
			alert("感谢你的支持!你可以继续操作!");
		}
	})
});
</script>
</head>
<body>
<input type="checkbox" id="cr"/> <label for="cr">我已经阅读了上面制度.</label>
</body>
</html>

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值