您当前的位置: 首页 >  Java

柠檬味小发糕

暂无认证

  • 4浏览

    0关注

    84博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

JavaScript基础学习 放大镜

柠檬味小发糕 发布时间:2021-12-22 21:04:36 ,浏览量:4

JavaScript基础学习 放大镜





    
    
    
    Document
    
        .mask {
            display: none;
            position: absolute;
            top: 0;
            left: 0;
            width: 400px;
            height: 400px;
            background-color: pink;
            opacity: .5;
            cursor: move;
        }
        
        .father {
            position: relative;
            height: 500px;
            width: 500px;
            margin-left: 100px;
            margin-top: 50px;
        }
        
        .big {
            display: none;
            position: absolute;
            width: 400px;
            height: 400px;
            left: 700px;
            top: 0;
            background-color: yellow;
        }
        
        .big img {
            position: absolute;
            top: 0;
            left: 0;
        }
    



    
var father = document.querySelector('.father'); var mask = document.querySelector('.mask'); var big = document.querySelector('.big'); var bigImg = document.querySelector('.bigImg'); // 鼠标经过大盒子时,显示遮挡层和大图片 father.addEventListener('mouseover', function() { mask.style.display = 'block'; big.style.display = 'block'; }) // 鼠标移开大盒子时,把遮挡层和大图片进行遮挡 father.addEventListener('mouseout', function() { mask.style.display = 'none'; big.style.display = 'none'; }) // 鼠标移动让我们的遮挡层跟着鼠标一起移动 father.addEventListener('mousemove', function(e) { var x = e.pageX - father.offsetLeft; var y = e.pageY - father.offsetTop; var maskX = x - 200; var maskY = y - 200; // 让遮挡层不要超出我们的大盒子,如果超出就让遮挡层处于边界 if (maskX < 0) { maskX = 0; } else if (maskX >= 300) { maskX = 300; } if (maskY < 0) { maskY = 0; } else if (maskY >= 300) { maskY = 300; } mask.style.left = maskX + 'px'; mask.style.top = maskY + 'px'; var bigMax = bigImg.offsetWidth - big.offsetWidth; var bigX = maskX * bigMax / 1000; var bigY = maskY * bigMax / 1000; bigImg.style.left = -bigX + 'px'; bigImg.style.top = -bigY + 'px'; })

在这里插入图片描述

关注
打赏
1640351950
查看更多评论
立即登录/注册

微信扫码登录

0.0402s