jQuery(DOM对象) 或者 $(DOM对象)
此函数的作用是将DOM对象,转换为jQuery的对象
DOM对象其实就是javascript的函数对象,可以用来操作所有HTML元素。比如: a标签是html元素,document是DOM对象
【需求】
分别定义DOM对象和jQuery对象,通过instanceof 关键字分别判断它们是否是jQuery对象 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <!-- 引入jquery开发包 --> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <script type="text/javascript"> //页面加载后执行 $(function() { //使用JS获取Dom对象 var div1Dom = document.getElementById("mydiv1"); //使用jqueryid选择方式获得jquery对象 var div2jQuery = $("#mydiv2"); alert(div1Dom instanceof jQuery); //判断该对象是否是jquery对象 alert(div2jQuery instanceof jQuery); //判断该对象是否是jquery对象 }); </script> </head> <body> <div id='mydiv1'>这里是div的内容1</div> <div id='mydiv2'>这里是div的内容2</div> </body> </html>
jQuery对象其实是jQuery为了方便操作html元素而自定义的一种对象类型,类似于JavaScript的DOM对象
关于jQuery对象和DOM对象,需要注意的是: (1)只有jQuery对象才能使用jQuery提供的属性和方法,并且无法使用DOM对象的属性和方法。而DOM对象只能使用DOM对象的属性和方法,无法使用jQuery提供的属性和方法。
所以我们在使用jQuery的时候,往往需要先将DOM对象,转换成jQuery对象再进行使用。
【需求】 分别让jQuery对象和DOM对象使用各自的方法,试验它们使用对方的方法会如何? <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <!-- 引入jquery开发包 --> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <script type="text/javascript"> //页面加载后执行 $(function() { //使用JS获取Dom对象 var div1Dom = document.getElementById("mydiv1"); //使用jqueryid选择方式获得jquery对象 var div2jQuery = $("#mydiv2"); alert(div1Dom.innerHTML);//使用DOM对象的显示内容的属性 alert(div2jQuery.html());//使用jQuery对象的显示内容方法 //DOM对象和jQuery对象无法使用对方的属性和方法 //alert(div1Dom.html());//出错 //alert(div2jQuery.innerHTML);//出错 }); </script> </head> <body> <div id='mydiv1'>这里是div的内容1</div> <div id='mydiv2'>这里是div的内容2</div> </body> </html> 【相关函数】 .html(); 显示jQuery对象中的html内容 (2)DOM对象转换成jQuery对象 通过jQuery(DOM对象)核心函数进行转换,返回的结果就是jQuery对象,如:$(dom); 【需求】 将一个DOM对象转换成jQuery对象,并使用jQuery对象的方法 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <!-- 引入jquery开发包 --> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <script type="text/javascript"> //页面加载后执行 $(function() { //使用JS获取Dom对象 var div1Dom = document.getElementById("mydiv1"); //将DOM对象转换成jQuery对象 var q = $(div1Dom); //使用jQuery对象的html()方法,显示内容 alert(q.html()); }); </script> </head> <body> <div id='mydiv1'>这里是div的内容1</div> <div id='mydiv2'>这里是div的内容2</div> </body> </html> (3)jQuery对象转换成DOM对象 jQuery对象本身可以看成是DOM对象的数组,如果转换前的DOM对象的数量只有一个,可以通过jQuery对象[0] 或者 jQuery对象.get(0)来获取DOM对象。
并且可以通过length属性或者size()方法获取元素个数 【需求】 将jQuery对象转为DOM对象,并通过DOM对象的方法或属性显示其内容 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <!-- 引入jquery开发包 --> <script type="text/javascript" src="js/jquery-1.12.3.js"></script> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <script type="text/javascript"> //页面加载后执行 $(function() { //使用jqueryid选择方式获得jquery对象 var div2jQuery = $("#mydiv2"); //将jQuery对象转换成DOM对象 var d = div2jQuery[0]; //使用DOM对象的方法或属性显示其内容 alert(d.innerHTML); }); </script> </head> <body> <div id='mydiv1'>这里是div的内容1</div> <div id='mydiv2'>这里是div的内容2</div> </body> </html> 【相关函数】 jQuery对象[0],jQuery对象.get(0) 获取DOM对象 length属性或者size() 方法获取元素个数 (4)在开发的时候,为了避免混淆DOM对象和jQuery对象,我们往往在定义jQuery对象时,为jQuery对象名加上$符号。 例如: var 变量名 = dom对象; var $变量名 = jquery对象;