1、 写法
$(document).ready(function(){
//….
});
可以简写:
$(function(){
//….
});
2、jQuery对象和DOM对象
|- DOM对象
DOM( Document Object Model,文档对象模型 ),每一份DOM都可以表示成一棵树。
如,<h3>,<p>,<ul>以及<li>子节点都是DOM元素节点。可以通过javascript中的getElementsByTagName或者getElementById来获取元素节点。像这样得到的DOM元素就是DOM对象。DOM对象可以使用javascript中的方法,示例如下:
var domObj = document.getElementById(“id”); //获取dom对象
var ObjHTML = domObj.innerHTML; //使用javascript中的方法---innerHTML
|-jQuery对象
jQuery对象就是通过jQuery包装DOM对象后产生的对象。
jQuery对象就是jQuery独有的,如果一个对象是jQuery对象,那么就可以使用jQuery里的方法。例如:
$(“#foo”).html();
这段代码等价于:
document.getElementById(“foo”).innerHTML;
在JQuery对象中无法使用DOM对象的任何方法。例如$(“#id”).innerHTML和$(“#id”).checked之类的写法都是错误的,可以用$(“#id”).html()和$(“#id”).attr(“checked“)之类的jQuery方法来替换。同样,DOM对象也不能使用jQuery里的方法。例如,document.getElementById(“id”).html()也会报错,只能用document.getElementById(“id”).innerHTML;语句。
2、 jQuery对象和DOM对象的相互转换
在讨论jquery对象和dom对象的相互转换之前,先约定好定义变量的风格。如果获取的是jquery对象,那么在变量前面加$符号,如
var $variable = jQuery对象;
如果获取的是dom对象,则定义如下:
var variable = DOM对象;
2.1 jQuery对象转成DOM对象:
jQuery提供了2种方法将一个jquery对象转成dom对象,即[index]和get(index)方法。
(1)jquery对象是一个数组对象,可以通过[index]的方法得到相应的dom对象。
var $cr = $("#cr"); //jquery对象
var cr = $cr[0]; //DOM对象
alert(cr.checked);
(2)另一个方法是jQuery本身提供的,通过get(index)方法得到相应的Dom对象。
var $cr = $("#cr");
var cr = $cr.get(0);
alert(cr.checked);
2.2 DOM对象转成jQuery对象
对于一个DOM对象,只需要用$()把Dom对象包装起来,就可以获得一个jQuery对象了。方式为 $( DOM对象);
var cr =document.getElementById("cr"); //DOM对象
var $cr = $( cr ); //jQuery对象
转换后,可以任意使用jQuery中的方法。
** DOM对象才能使用DOM中的方法,jQuery对象不可以使用DOM中的方法,但jQuery对象提供了一套更加完善的工具用于操作DOM。
Eg:
<inputtype="checkbox" id="cr" /><labelfor="cr">我已经阅读了上面制度.</label>
$(function(){
var $cr = $("#cr");
/*var cr= $cr[0];
$cr.click(function(){
if(cr.checked){
alert("感谢你的支持!你可以继续操作!");
}
});*/
$cr.click(function(){
if($cr.is(":checked")){
alert("感谢你的支持!你可以继续操作!");
}
});
});