jQuery鼠标划入划出

Posted jianxian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery鼠标划入划出相关的知识,希望对你有一定的参考价值。

 今天来简单的谈谈jQuery的一个划入划出的方法,。首先划入划出能想到的东西有哪些呢,。

  1:hover

  2:mouseenter/mouseleave

  3:mouseover/mouseout.

  一共是三中方法,先来说说他们的使用方法

1
2
3
4
5
$(".evo").hover(function(){
    $(this).addClass("red");
       },function(){
       $(this).removeClass("red");
       })

  这样写有点乱,那就写清楚点

$("").hover(function(){

        },function(){
            
        })

  其实就这么一点代码,一共两个function,是因为划入划出,第一个function定义的是划入的效果,第二个function里面定义的是划出的效果,。

  在来看看第二种

  

 $(".evo").mouseenter(function(){
    $(this).addClass("red");
         })
        $(".evo").mouseleave(function(){
            $(this).removeClass("red");
        })

  再来看看第三种

  

 $(".evo").mouseover(function(){
    $(this).addClass("red");
         })
         $(".evo").mouseout(function(){
            $(this).removeClass("red");
         })

  再来说说他们的区别,这三者之间的区别其实只是两者的区别,首先hover其实和mouseenter+mouseleave是一样的,从字面上就可以理解,一个是鼠标进入,一个是鼠标离开,而mouseover/mouseout和他们之间的区别是上面呢,一般情况下不容易看出来,但是给他们触发的元素里面有子元素就可以看出效果了,。

当用hover或者mouseenter/mouseleave的时候,鼠标移到元素上的时候会触发时间,当再在元素上移到器子元素上的时候就不会再触发了,。

但是mouseover/mouseout就不同了,鼠标移到元素上的时候会触发时间,由元素上移到子元素又会触发,由子元素移到父元素又会再次触发,会不停的触发。

而hover或者mouseenter/mouseleave只会触发一次。鼠标只要是在元素中和其父元素中活动都不会再次触发。

以上是关于jQuery鼠标划入划出的主要内容,如果未能解决你的问题,请参考以下文章

Unity鼠标划入划出检测

JS实现穿墙效果(判断鼠标划入划出的方向)

Trigger

9款鼠标划入卡片特效

JavaScript实现全选选项框的功能和鼠标划入出现下拉框的功能--JavaScript实例集锦(初学)

NGUI中 鼠标划出屏幕后,停止对 UIDragScrollView 的 press