• 44.JS--hover事件防重复效果


    遇到一种情况,就是运用hover事件的时候,会出现对象(主要是图片)闪动现象。主要是由于hover事件重复触发导致这一现象。

    html:

    <p class="smallImg" style="500px">
    <img class="eckPcImg" src="/{$theme_cur.thumb}" width="278" height="220" >
    <img class="eckMobileImg" src="/{$theme_cur.thumb_mobile}" width="150" height="220" style="margin-left:20px;" class="tempImages">
    </p>
    <p class="smallImg" style="500px">
    <img src="/{$v.thumb}" width="280" height="220" class="tempImages">
    <img src="/{$v.thumb_mobile}" width="150" height="220" class="tempImages" style="margin-left:20px;">
    </p>

    js:
    <script >
    $(function(){
    var isBigImgDiv=false;
    var BigImgDiv='<div id="btnBigImg" style="z-index:9999;position:fixed;top:50%;left:50%;margin-left:-350px;margin-top:-200px;box-shadow:0 10px 10px #ddd"><img src="" class="tempImages"></div>'
    $(".smallImg>img").mouseenter(function(){
    if(isBigImgDiv)
    {
    return;
    }
    var imgSrc= $(this).attr("src");

    // console.log(imgSrc);
    $(document.body).append(BigImgDiv);
    $("#btnBigImg img").attr("src",imgSrc);
    $("#btnBigImg img").attr("width",$(this).attr("width")*2);
    $("#btnBigImg img").attr("height",$(this).attr("height")*2);
    isBigImgDiv=true;

    });


    var el = window.document.body;//声明一个变量,默认值为body
    window.document.body.onmouseover = function(event){
    el = event.target;//鼠标每经过一个元素,就把该元素赋值给变量el
    // console.log("class:",$(event.target).attr("class"),"isBigImgDiv:",isBigImgDiv);
    if(($(event.target).attr("class")!="tempImages"&&$(event.target).attr("class")!="eckPcImg"&&$(event.target).attr("class")!="eckMobileImg")&&isBigImgDiv){
    isBigImgDiv=false;
    $("#btnBigImg").remove();
    }
    }



    })

    </script>
  • 相关阅读:
    解除对80端口的占用
    php排序算法
    Jquery异步请求数据实例
    C# winform 递归选中TreeView子节点
    C# WinFrom 编写正则表达式验证类
    c# winfrom 委托实现窗体相互传值
    [转]我的第一个WCF
    计算字符串中子串出现的次数
    JQuery中的html(),text(),val()区别
    Crystal Report制作使用
  • 原文地址:https://www.cnblogs.com/sqyambition/p/9074759.html
Copyright © 2020-2023  润新知