当用户将鼠标指针移到某个元素上时,就会触发 mouseover 事件。当用户将鼠标指针移出某个元素时,就会触发 mouseout 事件。mouseover 和 mouseout 平常都是形影不离的。
图 1:鼠标指针移入和移出
图 2::链式调用
mouseover 和 mouseout 分别用于控制鼠标指针“移入”和“移出”这两种状态。例如,在下拉菜单导航中,鼠标指针移入会显示二级导航,鼠标指针移出则会收起二级导航。
举例:移入和移出
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script src="js/jquery-1.12.4.min.js"></script> <script> $(function () { $("div").mouseover(function(){ $(this).css("color", "red"); }) $("div").mouseout(function () { $(this).css("color", "black"); }) }) </script> </head> <body> <div>C语言中文网</div> </body> </html>
预览效果如图 1 所示。
图 1:鼠标指针移入和移出
这里的$(this)
指的其实就是触发当前事件的元素,也就是 div 元素。在这个例子中,$(this)
等价于$("div")
。$(this)
的使用是非常复杂的,这里我们只是让初学者熟悉一下,后面再给小伙伴们详细讲解。
上面这个例子虽然简单,但是方法已经教给大家了。大家可以尝试使用 mouseover 和 mouseout 这两个事件来设计下拉菜单效果。
举例:链式调用
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script src="js/jquery-1.12.4.min.js"></script> <script> $(function () { $("div").mouseover(function(){ $(this).css("color", "red"); }).mouseout(function () { $(this).css("color", "black"); }) }) </script> </head> <body> <div>C语言中文网</div> </body> </html>
预览效果如图 2 所示。
图 2::链式调用
分析:
$("div").mouseover(function(){ $(this).css("color", "red"); }).mouseout(function () { $(this).css("color", "black"); })
上面的代码其实等价于:
$("div").mouseover(function(){ $(this).css("color", "red"); }) $("div").mouseout(function () { $(this).css("color", "black"); })
在 jQuery 中,如果对同一个对象进行多种操作,则可以使用链式调用的语法。链式调用是 jQuery 中的经典语法之一,不仅可以节省代码量,还可以提高代码的性能和效率。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/23823.html