document.getElementById(“id”) 返回的是DOM对象
$(“#id”) 返回的是jQuery对象
两者是不完全相等的
document.getElementById("id")===$("#id") //false
jQuery对象和DOM对象是可以相互转换的,这样DOM对象就可以使用jQuery里的方法,jQuery对象也可以使用DOM对象的方法
1、jQuery对象 => DOM对象
(1) [index]
document.getElementById("id")===$("#id")[0] //true
(2) .get[index]
document.getElementById("id")===$("#id").get(0) //true
转换后的jQuery对象可以使用DOM对象的方法,例如:
$("#id").get(0).innerHTML; //不会报错
2、DOM对象 => jQuery对象
DOM对象只要用 $() 包装起来,就可以转化成jQuery对象
$(document.getElementById("id")).html(); //不会报错
转换后的对象类型,不能再使用原对象类型的方法
以此类推,这些区别类似
- $(“div”) 与 document.getElementsByTagName(“div”)
- $(“name=’name’”) 与 document.getElementsByName(“name”)