jquery对象 和 dom 对象 及其 转换
2012-03-13 11:32
429 查看
疑惑??
什么是Jquery对象? 什么是Dom对象?下面我将一一给大家讲讲我的理解,如有不妥敬请指出dom对象 ?
dom对象也就是dom文档里面的各种属性,选择符号,方法等
请看 DOM文档对象
jQuery对象?
---就是通过jQuery调用js库,包装DOM对象后产生的对象。jQuery对象是jQuery特有的,只能在jquery方法使用。
比如:
<div id="mytest"> test js and dom </div>
下面的是两种方法获取id 为"mytest"里面的内容,两种方法获取内容的是事一致的
$("#mytest").html(); //test js and dom
document.getElementById("mytest").innerHTML; //test js and dom
虽然jQuery对象是包装DOM对象后产生的,但是jQuery无法使用DOM对象的任何方法,同理DOM对象也不能使用jQuery里的方法.乱使用会报错。比如:$("#mytest").innerHTML、document.getElementById("mytest").html()之类的写法都是错误的。
还有一个要注意的是:用#id作为选择符取得的是jQuery对象与document.getElementById("id")得到的DOM对象,这两者并不等价。请参看如下说的两者间的转换。
既然jQuery有区别但也有联系,那么jQuery对象与DOM对象也可以相互转换。在再两者转换前首先我们给一个约定:如果一个获取的是 jQuery对象,那么我们在变量前面加上$,如:var $variab = jQuery对象;如果获取的是DOM对象,则与习惯普通一样:var variab = DOM对象;这么约定只是便于讲解与区别,实际使用中并不规定。
DOM对象转成jQuery对象:
对于已经是一个DOM对象,只需要用$()把DOM对象包装起来,就可以获得一个jQuery对象了。$(DOM对象)
var test=document.getElementById("mytest"); //DOM对象 var $test1=$(test); // test1就是jQuery对象转换后,就可以任意使用jQuery的方法了。
jQuery对象转成DOM对象
两种转换方式将一个jQuery对象转换成DOM对象:[index]和.get(index);
(1)jQuery对象是一个数据对象,可以通过[index]的方法,来得到相应的DOM对象。 如:var $test=$("#mytest") ; //jQuery对象 var test1=$test[0]; //DOM对象 alert(test1.checked) //检测这个checkbox是否被选中 (2)jQuery本身提供,通过.get(index)方法,得到相应的DOM对象 如:var $test=$("#mytest"); //jQuery对象 var test1=$test.get(0); //DOM对象 alert(test1.checked) //检测这个checkbox是否被选中
下面你的是我自己做的小例子仅供参考
<!Doctype html>
<head>
<title>HelloWorld</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" language="javascript" src="../../style/jquery-1.7.1.js"></script>
<script type="text/javascript">
function test(){
alert(document.getElementById("mytest").innerHTML);
}
$(function(){
$("#btn2").click(function() {
alert($("#mytest").html());
});
})
$(function(){
$("#btn3").click(function(){
var btn3=document.getElementById("mytest");
var $test1 = $(btn3);
alert($test1.html());
});
});
$(function(){
$("#btn4").click(function(){
var $test =$("#mytest");
var mytest=$test.get(0);
alert(mytest.innerHTML);
});
});
$(function(){
$("#btn5").click(function(){
var $test = $("#mytest");
var mytest = $test[0];
alert(mytest.innerHTML);
});
});
</script>
</head>
<body>
<div id="mytest" style="font-size:24px;">test js and dom</div>
<div class="divFrame" style="width:auto;height:260px;background:grey;align:center;">
<input type="button" id="btn1" onclick="test();" value="通过Dom对象获取mytest内容"/>
<input type="button" id="btn2" value="通过jquery对象获取mytest内容"/>
<input type="button" id="btn3" value="dom 转换成 jquery对象">
<input type="button" id="btn4" value="jquery对象转化成dom对象1">
<input type="button" id="btn5" value="jquery对象转化成dom对象2">
</div>
</body>
</html>
相关文章推荐
- jquery对象和javascript对象即DOM对象相互转换
- jQuery对象与dom对象相互转换
- Jquery转换json对象为字符串 JSON.stringify(jsonObject)[及其浏览器兼容性问题]
- jQuery对象与dom对象相互转换
- jQuery 对象与 DOM 对象的转换
- 惊叹jQuery(解决jQuery对象到DOM的转换)
- jQuery对象与DOM对象相互转换
- jQuery对象与dom对象相互转换
- 惊叹jQuery(解决jQuery对象到DOM的转换)
- jquery对象和javascript对象即DOM对象相互转换
- js-jQuery对象与dom对象相互转换
- jquery对象与dom对象相互转换
- js-jQuery对象与dom对象相互转换
- jQuery对象与dom对象相互转换jQuery对象与dom对象相互转换
- jQuery对象与dom对象相互转换
- jQuery对象与dom对象相互转换
- js-jQuery对象与dom对象相互转换
- 【JQuery】jquery对象和javascript对象即DOM对象相互转换
- JavaScript对象之间的转换 jQuery对象和原声DOM