JS之mouseover和mouseenter

Posted

tags:

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
    <p>不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件。</p>  
    <p>只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。</p> 
    <div class="over" style="background-color:lightgray;padding:20px;width:40%;float:left">  
        <h2 style="background-color:white;">被触发的 Mouseover 事件:<span></span></h2>  
    </div>  
    <div class="enter" style="background-color:lightgray;padding:20px;width:40%;float:right">  
           <h2 style="background-color:white;">被触发的 Mouseenter 事件:<span></span></h2>  
    </div>  
    <script>
        var x = 0,y = 0;
        var div1 = document.getElementsByClassName("over")[0];
        div1.addEventListener("mouseover",function(){
            var span = this.getElementsByTagName("span")[0]
            span.innerText = (x +=1);
            span.style.cssText = "border:2px red solid;";
        },false);
        
        var div2 = document.getElementsByClassName("enter")[0];
        div2.addEventListener("mouseenter",function(){
            var span = this.getElementsByTagName("span")[0]
            span.innerText = (y +=1);
            span.style.cssText = "border:2px red solid;";
        },false);
    </script>
</body>
</html>

mouseenter和mouseover的区别是mouseenter事件只会触发一次,触发对象可以是作为父元素的本身也可以是子元素。但是mouseover事件可以被触发多次,触发对象是父元素或者子元素。

 

以上是关于JS之mouseover和mouseenter的主要内容,如果未能解决你的问题,请参考以下文章

JS之mouseover和mouseenter

js mouseover/out 要用mouseenter/leave 代替

3.mouseenter和mouseover事件的区别

javascript----mouseover和mouseenter的区别

mouseover和mouseenter的区别

mouseover 和 mouseenter 事件有啥区别?