jQuery对象和普通DOM对象的区别
document.getElementById(‘book’).disabled=true;
在jquery中写的$("#book").disabled = true; 为什么没效果呢
因为$("#save")出来的其实是jQuery对象,而不是普通DOM对象
解决方法有2:
//1.用JQ写法
$("#save").attr("disabled","true");
//2.转成DOM写法
$("#save")[0].disabled=true;
$("#save")[0]也可以写成$("#save").get(0)。他返回的也是DOM元素
$("#save").eq(0)是jq对象
$(dom对象)是jquery对象。
jQuery对象和DOM对象
DOM对象,即是我们用传统的方法,即javascript中document.get方法获得的对象
var domObj = document.getElementById("id"); //DOM对象
jQuery对象即是用jQuery类库的选择器获得的对象。jQuery对象就是通过jQuery包装DOM对象后产生的对象,它是jQuery独有的。只有jQuery对象可以使用jQuery里的方法
$("#foo").html(); //获取id为foo的元素内的html代码,html()是jQuery特有的方法;
var $obj = $("#id"); //jQuery对象;
//上面的那段代码等同于:
document.getElementById("foo").innerHTML; //DOM对象
注意:
1.两种对象中间的方法不通用,但一般可以找到类似的方法相互替换
//错误:jquery对象使用DOM方法
$("#id").innerHTML
$("#id").checked
//正确:
$("#id").html()
$("#id").attr ("checked")
2.两种对象的互相转换
当想使用的方法对象没有时,可以将两种对象转换,达到使用想要的方法的目的。
jquery对象------> dom对象
jquery提供了两种方法将一个jquery对象转换成一个dom对象,即[index]和get(index)。可以看出,jquery对象是一个数组对象.
var $book=$("#book"); //jquery对象
var book = $book[0]; //dom对象 也可写成 var cr=$cr.get(0);
等价于:var book = $("#book").[0]或var book = $("#book").get(0)
dom对象------>jquery对象
对于一个dom对象,只需要用()把dom对象包装起来,就可以获得一个jquery对象了,方法为()把dom对象包装起来,就可以获得一个jquery对象了,方法为()把dom对象包装起来,就可以获得一个jquery对象了,方法为(dom对象);
var book=document.getElementById("book"); //dom对象
var $cr = $(book); //转换成jquery对象
本文详细解析了jQuery对象与普通DOM对象之间的区别,包括它们各自的特点、使用方法的不同,以及如何在两者之间进行转换,以便在网页开发中灵活运用。
425

被折叠的 条评论
为什么被折叠?



