jQuery 对象 与 原生 DOM 对象 相互转换
2018-08-11 本文已影响36人
passMaker
区别
jQuery 选择器得到的 jQuery对象 和 原生JS 中的document.getElementById()
document.querySelector
取得的 DOM对象 是两种不同类型,两者是不等价的。
jQuery 无法使用 原生DOM对象的方法,原生DOM对象 也不能使用 jQuery 里的方法。乱使用会报错。
<p>我是对象</p>
原生DOM:
document.querySelector('p').innerText
jQuery:$('p').text()
所以他们是不等同的,但他们最终取出的 DOM 是一致的。
示例
原生 DOM 判断一个元素是否存在可以用document.querySelector
查看它是否为null
因为 jQuery 是类数组对象。jQuery 则可以通过.length
查看他的长度是否为0
来判断这个元素是否存在
相互转化
参照上面 JSBin 的 output 可以做 demo 演示
- 原生DOM对象 转 jQuery对象
var p1 = document.querySelector('#p1')
var $p1 = $(p1)
- jQuery对象 转 原生DOM对象
var $p = $('p')
var p1 = $p[0]
var p2 = $p.get(1)