在写js的时候经常用到JQ对象和DOM对象互相转换的过程,以下对二者之间的转换做了总结记录下来。
DOM对象?
DOM—Document Object Model,它是W3C国际组织的一套Web标准。它定义了访问HTML文档对象的一套属性、方法和事件。
所以DOM对象也就是我们通过js直接获取的HTML节点。
element.getElementById('id');
element.getElementsByTagName('tag');
element.getElementsByClassName('class');
JQ对象?
jQuery对象就是通过jQuery包装DOM对象后产生的对象,它是jQuery独有的。如果一个对象是jQuery对象,那么就可以使用jQuery里的方法。在jQuery对象中无法使用DOM对象的任何方法。
$("#id");
$(".class");
$("tagName");
两者互相转换
jq对象转换成DOM对象:[index]和.get(index);
$("#navigation") instanceof jQuery //true
$("#navigation")[0] instanceof jQuery //false DOM对象
$("#navigation").get[0] instanceof jQuery//false DOM对象
DOM对象转换成jQ对象
对于已经是一个DOM对象,只需要用$()把DOM对象包装起来,就可以获得一个jQuery对象了。$(DOM对象)
document.getElementById('navigation') instanceof jQuery//false
$(document.getElementById('navigation')) instanceof jQuery//true JQ对象