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

jquery带左右切换滚动的产品列表特效代码

一款左右切换滚动脚本,可使用上一组/下一组按钮进行水平滚动列表。
  图片特效&上传
 9285  0

javascript3D幻灯片产品图片展示特效代码

一款动态的产品展示效果,点击鞋盒即可触发开箱动画及查看鞋子图片,还有产品名称和价格的变换。
  图片特效&上传
 8103  0

jquery浏览器调取摄像头拍照并裁剪上传

一款调取摄像头拍照上传插件,主要是基于webcam.js和cropbox.js实现此功能,需要你当前的电脑允许使用摄像头,拍照完成后可在线裁剪头像,最后上传头像。
  图片特效&上传
 671  0

jquery响应式兼容触屏滑动的幻灯片特效代码

根据屏幕大小自适应大小,图片全屏铺满,非常棒的一款图片切换特效。
  图片特效&上传
 5273  0

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

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