ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

其他17---解决onmouseover多次触发问题

2022-04-01 04:31:05  阅读:288  来源: 互联网

标签:明天 reltg 17 bo --- onmouseover var ev 你好


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .bo{
            width:100%;
            background-color: #7fffd4;
            transition:top 1.5s;
        }
    </style>
</head>
<body>
    <div class="box">
        <div class="box1" style="position:relative;width:500px;height:300px;border:1px solid red;overflow: hidden;">
            <img src="./image/4.jpg" alt="" style="width:500px;height:300px;">
            <div style="position:absolute;top:240px;background-color: bisque;" class="bo">
                <h3>你好明天</h3>
                <p>你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天你好明天</p>
            </div>
        </div>
    </div>
    <script>           
        var item=document.getElementsByClassName('box1')[0] 
        var bo=document.getElementsByClassName('bo')[0] 
        item.onmouseover = function(ev)
        {
            var ev=ev||window.event;
                if(!isMouseLeaveOrEnter(ev,this)){return false;}
            bo.style.top=0+'px'
        };
item.onmouseout = function(ev) { var ev=ev||window.event; if(!isMouseLeaveOrEnter(ev,this)){return false;} bo.style.top=240+'px' };
//消除onmouseover和onmouseout重复执行,这是关键代码 function isMouseLeaveOrEnter(e, handler) { if (e.type != 'mouseout' && e.type != 'mouseover') return false; var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement; while (reltg && reltg != handler) reltg = reltg.parentNode; return (reltg != handler); } </script> </body> </html>

  

标签:明天,reltg,17,bo,---,onmouseover,var,ev,你好
来源: https://www.cnblogs.com/hunter1/p/16084995.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有