猿问

querySelector和$()区别

页面有如下元素
jquery脚本里:
vara=document.querySelector("#aBtn");
varb=$("#aBtn");
a和b有何区别?发现b[0]==a,为何?

		
慕婉清6462132
浏览 415回答 2
2回答

小唯快跑啊

document.querySelector是浏览器级别的API,根据参数选择第一个满足的DOM节点。jquery脚本里面的$必须在引入了jquery之后才能使用,也是dom的选择器,选择满足条件的DOM节点数组,现在jquery貌似结果是原生的DOM元素了,所以$('#aBtn')[0]就等同于document.querySelector('#aBtn')

胡说叔叔

a是(调用querySelector)返回的DOM原生element对象b是(调用jQ的$/jQuery,或者可以叫做jQuery构造器)返回的jQ包装对象,jQ包装对象同时包含有原生DOM对象和一些jQ自己的东西b[0]==a是因为jQ包装对象在存储时会把原生DOM对象存储在key[0]的位置(这个你console一下就很清楚了)
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答