为什么JS对象和JQ对象之间要相互转换
JS内置属性和方法与JQ原型上提供的属性和方法不能公用
1、基于原生JS提供的属性和方法获取 =》 ‘原生JS对象’
可以调取使用内置的JS属性和方法
- className
- onclick
- 。。。
原生JS对象转换为JQ对象
let tabBox = document.querySelector('.tabBox')
//方法
let $tabBox = $(tabBox)
// 直接使用选择器把原生JS对象包裹起来,就会把JS转换为JQ对喜爱给你
// 因为$()就是创建JQ的一个示例
2、基于JQ选择起获取 =》‘JQ对象’
可以调取JQ原型上提供的属性和方法
- add
- find
- 。。。
[JQ对象转换为原生JS对象]
//JQ对象是一个类数组结合,集合中每个索引对应的都是原生JS对象,我们基于索引获取即可
let $tabBox = $('.tabBox');
//变量名前面以$开始的,一般代表基于JQ选择器获取的结果
//方法一
let tabBox = $tabBox[0];
//方法二
let tabBox = $tabBox.get(0)
//get是JQ原型上提供的方法。供JQ示例基于索引获取到指定的JS对象
//或者
let tabBox = $tabBox.eq(0)
//eq也是就索引获取集合中的某一项,只不过get获取的是JS对象,eq会把获取的结果包裹成一个新的JQ对象(JQ示例返回)--还是一个JQ对象