页面有如下元素jquery脚本里:vara=document.querySelector("#aBtn");varb=$("#aBtn");a和b有何区别?发现b[0]==a,为何?
2 回答
小唯快跑啊
TA贡献1863条经验 获得超2个赞
document.querySelector是浏览器级别的API,根据参数选择第一个满足的DOM节点。jquery脚本里面的$必须在引入了jquery之后才能使用,也是dom的选择器,选择满足条件的DOM节点数组,现在jquery貌似结果是原生的DOM元素了,所以$('#aBtn')[0]就等同于document.querySelector('#aBtn')
胡说叔叔
TA贡献1804条经验 获得超8个赞
a是(调用querySelector)返回的DOM原生element对象b是(调用jQ的$/jQuery,或者可以叫做jQuery构造器)返回的jQ包装对象,jQ包装对象同时包含有原生DOM对象和一些jQ自己的东西b[0]==a是因为jQ包装对象在存储时会把原生DOM对象存储在key[0]的位置(这个你console一下就很清楚了)
添加回答
举报
0/150
提交
取消