我正在学习jquery是如何工作的,到目前为止进展顺利,但我一直停留在$(this)
对象上。这是代码中我不太理解的部分。
$(".photos").on("mouseenter", "li", function(){
$(this).closest(".photos").find("span").slideToggle();
});
$(this)
指的是带有班级照片的元素($(".photos"),还是指带有班级照片元素内部的li?
在事件处理程序中,this
是鼠标移动到的li
,因此$(this)
只是一个元素。
因为它是委派的事件处理程序,所以"li"过滤器应用于所有出现在.photos元素之前的mouseenter
事件。然后,它将函数/处理程序应用于导致事件的每个匹配元素(将是鼠标下的单个LI
)。