专栏首页跟着阿笨一起玩NETjquery对象和javascript对象相互转换

jquery对象和javascript对象相互转换

本文转载:http://jeiofw.blog.51cto.com/3319919/786506

jQuery 对象是通过 jQuery 包装DOM 对象后产生的对象。jQuery 对象是 jQuery 独有的,其可以使用 jQuery 里的方法,但是不能使用 DOM 的方法;例如: $("#img").attr("src","test.jpg"); 这里的 $("#img")就是 jQuery 对象。

       DOM对象就是Javascript 固有的一些对象操作。DOM 对象能使用Javascript 固有的方法,但是不能使用 jQuery 里的方法。例如:document.getElementById("img").src=\'#\'" ) 就是DOM 对象。

       $("#img").attr("src","test.jpg"); 和 document.getElementById("img").src=\'#\'" 是等价的,是正确的,但是 $("#img").src=\'#\'" ;或者 document.getElementById("img").attr("src","test.jpg"); 都是错误的。

        再说一个例子,就是this, 在写 jQuery 时经常这样写: this.attr("src","test.jpg");可是就是出错,其实this 是DOM对象,而.attr("src","test.jpg") 是 jQuery 方法,所以出错了。要解决这个问题就要将 DOM对象转换成 jQuery 对象,例如 $(this).attr("src","test.jpg");

1. DOM 对象转成 jQuery 对象

对于已经是一个 DOM 对象,只需要用 $() 把DOM对象包装起来,就可以获得一个 jQuery 对象了,$(DOM 对象)     注: var是定义变量

如: var v = document.getElementById("v");        //DOM对象
           var $v = $(v);        //jQuery 对象  

转换后,就可以任意使用 jQuery 的方法。

2. jQuery 对象转成 DOM 对象

两种转换方式讲一个 jQuery 对象转换成 DOM 对象: [index] 和 .get(index);

(1) jQuery 对象是一个数据对象,可以通过 [index] 的方法,来得到相应的 DOM 对象。

   如: var $v = $("#v");          //jQuery 对象
            var v = $v[0];               //DOM 对象
            alert(v.checked);                  //检测这个checkbox是否被选中

   (2) jQuery 本身提供,通过.get(index) 方法得到相应的 DOM 对象

     如:var   $v = $("#v");           //jQuery 对象
             var v = $v.get(0);            //DOM对象 ( $v.get()[0] 也可以 )
             alert(v.checked);             //检测这个 checkbox 是否被选中

通过以上方法,可以任意的相互转换 jQuery 对象和 DOM 对象,需要再强调的是: DOM 对象才能使用DOM 中的方法,jQuery 对象是不可以使用DOM中的方法。   

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • jQuery的编码标准和最佳实践

    不知道在哪里看到了这篇关于jQuery编码的文章,挺实用的,恰好最近在研究jQuery的基础知识,今天打开收藏夹来翻译一下,原文的英语不难,但是内容很实用,可能...

    跟着阿笨一起玩NET
  • WindowsService的调试方法

    本人转载:http://www.cnblogs.com/xiebin1986/archive/2011/12/15/2288893.html

    跟着阿笨一起玩NET
  • Win8找不到无线信号怎么办

      开启无线上网需要三个层次的设置需要开启:物理开关,软件开关和无线服务。只有开关都打开无线指示灯才会亮。当指示灯亮但是仍然无法搜索到无线网络信号的时候,要检查...

    跟着阿笨一起玩NET
  • 2018-07-161 初识JQuery

    进入官方网站获取最新的版本 http://jquery.com/download/ ,这里需要注意 jQuery 分 2 个系列版本 1.x 与 2.x,主要...

    公众号-JavaEdge
  • 前端基础-jQuery对象和DOM对象

    jQuery对象不能使用DOM对象的成员,DOM对象不能使用jQuery对象的成员

    cwl_java
  • JS对象与Dom对象与jQuery对象之间的区别

    通过问题看本质: 举例: js的写法:document.getElementById('save').disabled=true; 在jquery中我是这...

    用户1195962
  • js行内式遇到的一些问题 DOM对象和jq对象转换的问题

    这两天给后台页面做页面,我的工作比较简单,只需要写结构和样式就行了,写好之后,后端大哥用ajax重写页面加载数据,顺便给标签添加选中事件,做选中后变色的处理,但...

    吴裕超
  • 垃圾回收算法(4)-复制算法

    复制算法首先将或者的内存空间分为2块,每次只使用其中一块,在垃圾会搜时将正在使用的内存中的存活对象复 制到未被使用的内存块中,之后清楚正在使用的内存块中的所有对...

    一觉睡到小时候
  • SAP最佳业务实践:FI–现金管理(160)-29 FF7A财务概览/现金状态和流动预测

    4.9 FF7A财务概览/现金状态和流动预测 现金状态给出选定银行帐户的日常流入和流程的概览。现金状态适合计划短期流动。 可以使用流动预测识别由过帐贷方和借方发...

    SAP最佳业务实践
  • 一文了解动态场景中的SLAM的研究现状

    常规的SLAM算法首先假设环境中所有物体均处于静止的状态。而一些能够在动态环境中运行的SLAM系统,只是将环境中的动态物体视为异常值并将他们从环境中剔除,再使用...

    小白学视觉

扫码关注云+社区

领取腾讯云代金券