jQuery对象和DOM对象的相互转换
在说他们之间的转换之前先说一下他们之间的关系吧:
Js 是动态的弱类型的语言,是 JavaScript 的缩写,而 jQuery 是对js的封装、扩展,jQuery 是使用js封装的框架,就是让
jquery更方便简洁。举个例子吧,js就好比是生的面条,而jquery是方便面,泡一下就可以吃了,比较的方便。
即:jquery是使用最少的代码来完成更多的功能。以上是我对js与jquery的区别的理解。
例如: $("#img").attr("src","test.jpg"); 这里的 $("#img")就是 jQuery 对象;
document.getElementById("img").src = “test.jpg";这里的document.getElementById("img") 就是DOM 对象。
1. DOM 对象转成 jQuery 对象
对于已经是一个 DOM 对象,只需要用 $() 把DOM对象包装起来,就可以获得一个 jQuery 对象了,$(DOM 对象) 注: var是定义变量
如:
var v = document.getElementById("v"); //DOM对象 var $v = $(v); //jQuery 对象
转换后,就可以任意使用 jQuery 的方法。
2. jQuery 对象转成 DOM 对象
两种转换方式讲一个 jQuery 对象转换成 DOM 对象: [index] 和 .get(index);
(1) jQuery 对象是一个数据对象,可以通过 [index] 的方法,来得到相应的 DOM 对象。
如:
var $v = $("#v"); //jQuery 对象 var v = $v[0]; //DOM 对象 alert(v.checked); //检测这个checkbox是否被选中
(2) jQuery 本身提供,通过.get(index) 方法得到相应的 DOM 对象
如:
var $v = $("#v"); //jQuery 对象 var v = $v.get(0); //DOM对象 ( $v.get()[0] 也可以 ) alert(v.checked); //检测这个 checkbox 是否被选中
通过以上方法,可以任意的相互转换 jQuery 对象和 DOM 对象,需要再强调的是: DOM 对象才能使用DOM 中的方法,jQuery 对象是不可以使用DOM中的方法。