js+css实现的图片放大镜效果

所属分类: 网页特效-图片特效&上传    2024-03-21 02:08:55

js+css实现的图片放大镜效果 ie兼容6
反馈问题  查看演示  登录后下载 温馨提示
登录会员即可享受免费下载
 我要建站

js+css实现的图片放大镜效果(共7个文件)

    • index.html

使用方法

    var oPreview = $('.preview');
    var oMask = $('.mask');
    var oEnlargeImg = $('.enlargement img');
    var oEnlarge = $('.enlargement');
    var tabEventMap = {
      mouseenter: (e) => {
        oMask.classList.add('active');
        oEnlarge.classList.add('active');
      },
      mouseleave: (e) => {
        oMask.classList.remove('active');
        oEnlarge.classList.remove('active');
      },
      mousemove: (e) => {
        var x = e.clientX - getPosition(oPreview).left;
        var y = e.clientY - getPosition(oPreview).top;
        var _x = x - oMask.offsetWidth / 2;
        var _y = y - oMask.offsetHeight / 2;
        _x = Math.max(0, _x);
        _x = Math.min(_x, oPreview.offsetWidth - oMask.offsetWidth);

        _y = Math.max(0, _y);
        _y = Math.min(_y, oPreview.offsetHeight - oMask.offsetHeight);
        oMask.style.left = _x + 'px';
        oMask.style.top = _y + 'px';

        // 展示比例   (展示区图片宽度 - 展示区宽度) / (预览区宽度 - 遮罩层宽度)
        var moveX = (oPreview.offsetWidth - oMask.offsetWidth) /
          (oEnlargeImg.offsetWidth - oEnlarge.offsetWidth);
        var moveY = (oPreview.offsetHeight - oMask.offsetHeight) /
          (oEnlargeImg.offsetHeight - oEnlarge.offsetHeight);
        oEnlargeImg.style.marginLeft = -_x * moveX + 'px';
        oEnlargeImg.style.marginTop = -_y * moveY + 'px';
      }
    }
    oPreview.addEventListener('mouseenter', handle);
    oPreview.addEventListener('mouseleave', handle);
    oPreview.addEventListener('mousemove', handle)

    function handle(e) {
      if (tabEventMap[e.type] && typeof tabEventMap[e.type] === 'function') {
        tabEventMap[e.type](e);
      }
    }

站长提示:
1. 平台上所有素材资源,需注册登录会员方能正常下载。
2. 会员用户积极反馈网站、素材资源BUG或错误问题,每次奖励20K币
3. PHP源码类素材,如需协助安装调试,或你有二次开发需求,可联系苦力吧客服。
4. 付费素材资源,需充值后方能下载,如有任何疑问可直接联系苦力吧客服
相关资源 / 图片特效&上传

jquery移动端带预览删除的上传图片插件代码

一款手机端图片上传特效,支持自定义上传的图片扩展名、图片大小、上传数量等。
  图片特效&上传
 356  

jquery展示图片360度旋转动画轮播特效

可用于产品多角度展示,带左右箭头切换旋转,很实用的功能!
  图片特效&上传
 204  

jquery上传图片自定义压缩大小/质量插件

一款图片上传压缩插件,支持按宽度、比例、大小进行压缩,并返回Base64图片编码。
  图片特效&上传
 195  

jquery简单易用的图片轮播Slidekick插件

一款支持图片、DIV文本内容切换的轮播插件,可设置:切换方向、是否循环等。
  图片特效&上传
 223  

评论数(0) 回复有机会获得K币 用户协议

^_^ 还没有人评论,快来抢个沙发!
😀
  • 😀
  • 😊
  • 😂
  • 😍
  • 😑
  • 😷
  • 😵
  • 😛
  • 😣
  • 😱
  • 😋
  • 😎
  • 😵
  • 😕
  • 😶
  • 😚
  • 😜
  • 😭
发表评论