1.mouseover事件跟mouseout事件的区别
- mouseover/mouseout事件,鼠标经过的时候会触发多次,每遇到一个子元素就会触发一次。
- mouseenter/mouseleave事件,鼠标经过的时候只会触发一次
2.jQuery对象跟DOM对象相互转换:
jQuery对象是包装DOM对象后产生的,但是jQuery无法使用DOM对象的任何方法,同理DOM对象也不能使用jQuery里的方法.乱使用会报错。比如:
//错误写法
$("#test").innerHTML
document.getElementById("id").html()
//正确写法
$("#test").html()
document.getElementById("id").innerHTML;
注意:
-
用#id作为选择符取得的是jQuery对象与document.getElementById("id")得到的DOM对象,这两者并不等价。
-
如果一个获取的是 jQuery对象,我们习惯在变量前面加上$,如:var $variab = jQuery对象;如果获取的是DOM对象,则与习惯普通一样:var variab = DOM对象;以此来区分jQuery对象跟dom对象。
jQuery对象转换成DOM对象:
//两种转换方式将一个jQuery对象转换成DOM对象:[index]和.get(index);
方式一:
$(“#btn”)[0]
或
var $btn =$("#btn") ; //jQuery对象
var btn=$btn[0]; //DOM对象
alert(btn.checked) //检测这个checkbox是否被选中
方式二:
$(“#btn”).get(0)
或
var $btn=$("#btn"); //jQuery对象
var btn=$btn.get(0); //DOM对象
alert(v.checked) //检测这个checkbox是否被选中
DOM对象转换成jQuery对象(转换后,就可以任意使用jQuery的方法):
//inw已经是一个DOM对象,只需要用$()把DOM对象包装起来,就可以获得一个jQuery对象了
$(document) -> 把DOM对象转成了jQuery对象
var btn = document.getElementById(“bt n”);
$btn =$(btn);
注意:
- DOM对象才能使用DOM中的方法,jQuery对象是不可以用DOM中的方法。
- 事件处理中,this 表示 DOM 对象 $(this) 表示 jQuery 对象
3.jQuery操作DOM
复习:
选择器
基本选择器:#id 、.class 、element、* 、
层级选择器: 空格、>、+、~
基本过滤选择器::first、:last、:eq(index)、:lt(index)、:gt(index)、:odd、:even
筛选选择器:.eq(index)、.children()、.parent()、.siblings()、.find()
网友评论