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仿淘宝主图上传支持拖拽

一款可拖拽上传图片的jq插件,带即时预览,很实用!
  图片特效&上传
 7843  0

js实现的响应式图文垂直滚动滑块特效代码

这是一款垂直滑块插件,支持图文交叉滚动,非常具有吸引力。核心功能是通过单击向上和向下按钮,可触发左侧和右侧图片或文本内容滚动切换。
  图片特效&上传
 3639  0

jquery支持图片DIV区块列表的触摸滑块插件

touchSlider是一个简单可自定义的滑块插件,支持鼠标点击切换和移动端触摸的幻灯片。。
  图片特效&上传
 8620  0

HTML5+Canvas创建的交互式多功能图片查看器

一款图片预览查看工具,提供的功能包含:图片平移、旋转、镜像和翻转等操作,很实用的一款工具。
  图片特效&上传
 3643  0

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

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