jQuery对象和原生JavaScript对象不能混用的问题及其相互转化

欢迎来到Altaba的博客 2017年2月28日14:09:57
相信大家在使用jQuery时候会发现
jQuery实在是太方便了
封装了好多方便的方法提供调用
我们需要实现什么后台逻辑或者判断的时候
直接拿来就用,真是懒人的必备啊
但是用多了你会发现
你在用jQuery选中的对象去调用JavaScript原生的方法时候会报错
用JavaScript选中的DOM对象也是调用不了jQuery的方法,即使是引用进了jQuery框架
这是为什么呢?
你可以这样想 :
jq获取dom是通过 $()方法,这是jq封装好了的。但是你通过 creatElement的方法获取的dom元素,明显跟$()获取到了的dom元素不是同一个,jq里面提供的方法是给 $()对象提供的,而原始的JavaScript获取的元素里面是没有那些方法的,所以压根就是两个对象,怎么能互相调用。
jquery的所有方法都在jquery对象上,当然不能被dom对象调用。
jQuery暴露出来的只有静态方法与实例方法,不可能访问闭包内部的其他东西
不过通过转化两者还是可以使用的:


例如:

var $cr=$("#cr");//jq对象
var cr=$cr.get(0);//jq对象转化成了dom对象
var cr=documnet.getElementById("cr");//dom对象
var $cr=$(cr); //dom对象转化成了jq对象

方法:
1、jQuery对象转化成dom对象:
两种转换方式将一个jQuery对象转换成DOM对象:[index]和jQuery自带的.get(index)会返回一个dom对象;
2、dom对象转化为jQuery对象:
只需要用$()把DOM对象包装起来,就可以获得一个jQuery对象了。$(DOM对象)
实现请参阅csdn上“梅花香自苦寒来”大神的一份博客:jQuery和js对象的相互转化
链接:http://blog.csdn.net/avenccssddnn/article/details/8566131

这里写图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值