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中的方法。

时间: 2024-10-09 04:06:51

jquery对象和javascript对象相互转换的相关文章

【JQuery】jquery对象和javascript对象即DOM对象相互转换

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

jQuery对象和Javascript对象

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

JSON对象和JavaScript对象直接量的区别--不同之处

JSON对象和JS对象直接量 在工作当中,我们总是可以听到人说将数据转换为JSON对象,或者说把JSON对象转换为字符串之类的话,下面是关于JSON的具体说明. JSON对象并不是JavaScript对象字面量(Object Literals) 很多人错误的将JSON认为是JavaScript当中的对象字面量(object Literals),原因非常简单,就是因为它们的语法是非常相似的,但是在ECMA中明确的说明了.JSON只是一种数据交互语言,只有我们将之用在string上下文的时候它才叫J

jquery对象和javascript对象即DOM对象相互转换

1. DOM 对象转成 jQuery 对象对于已经是一个 DOM 对象,只需要用 $() 把DOM对象包装起来,就可以获得一个 jQuery 对象了,$(DOM 对象) 注: var是定义变量如: var v = document.getElementById("v"); //DOM对象var $v = $(v); //jQuery 对象转换后,就可以任意使用 jQuery 的方法.2. jQuery 对象转成 DOM 对象两种转换方式讲一个 jQuery 对象转换成 DOM 对象:

jquery深度克隆javascript对象

利用jquery 的extend方法:extend([param1,]obj1,obj2); 说明:1.>将对象obj2复制到obj1中 2>param1,为布尔类型,true 表示深度复制 eg: var object1 = { apple: 0, banana: {weight: 52, price: 100}, cherry: 97 }; var object2 = { banana: {price: 200}, durian: 100 }; $.extend(true,object1,

JavaScript对象与jQuery对象以及DOM对象

今天说一下JavaScript对象与jQuery对象和DOM对象的区别和转换,前面已经见过JavaScript对象的创建,但还是要重提 var variable =                     //这是一个JavaScript对象 var $variable = $()             //这就是个jQuery对象 var variable = document.get...                   //这是一个DOM对象,方法包括getElementById(

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

通过问题看本质:举例:js的写法:document.getElementById('save').disabled=true;在jquery中我是这样写的 $("#save").disabled = true; //没有效果 分析:其实因为$("#save")出来的其实是jQuery对象,而不是普通DOM对象解决方法:1)用JQ写法 $("#save").attr("disabled","true"); 2

8.7 JSON存储数据方式(JavaScript对象表示法)

JSON JavaScript 对象表示法(JavaScript Object Notation) 是一种存储数据的方式. 一.创建JSON对象 var gareen = {"name":"盖伦","hp":616}; 这样就创建了一个JSON 对象 JSON对象由 名称/值对组成 名称和值之间用冒号:隔开 名称必须用双引号" 包含起来 值可以是任意javascript数据类型,字符串,布尔,数字 ,数组甚至是对象 不同的名称/值对之间

jQuery入门和DOM对象

jQuery入门和DOM对象 1.开发准备 1. 下载的版本: jquery-3.3.1.min.js :压缩版,发布版84.8KB jquery-3.3.1.js :常规版,开发版265KB 2. 开发工具: ? hbuilder webstrom(推荐) dreamweaver idea ? notepad++ 3. 使用: ? 引入jQuery html中 如果出错,不提示! 如果调试工具(F12)没有错误提示,但显示效果不一致,考虑html错误 常见错误: 引入js库时 必须是 <scr