jquery实现的放大镜效果示例


Posted in jQuery onFebruary 24, 2020

本文实例讲述了jquery实现的放大镜效果。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>商品详情</title>
  <link rel="stylesheet" href="../css/shoplistxq.css" rel="external nofollow" >
</head>
<body>
  <div class="main box">
    <div class="img">
      <img src="../img/shoplist/TB1lO6XJpXXXXc_XFXXLhc5_XXX_054423.jpg" alt="">
      <div class="bri"></div>
      <div class="big"></div>
    </div>
    <div class="content">
      <h3>2件卫衣男士长袖t恤加厚打底衫加绒秋衣保,<br>
        暖上衣男装冬季衣服潮
      买一送一!2件仅需89!加绒不加价!</h3>
      <div>价格¥ 168.00</div>
      <div>尺码</div>
      <div>颜色</div>
      <div>数量</div>
      <div>加入购物车</div>
    </div>
  </div>
</body>
</html>
<script src="../js/jquery-1.11.3.js"></script>
<script src="../js/shoplistxq.js"></script>

shoplistxq.css:

*{
 margin:0;
 padding:0;
 font-family: "微软雅黑";
}
ul li{
 list-style: none;
}
a{
 text-decoration: none;
 color: #666;
}
/*主体宽度*/
.main {
 margin:0 auto;
 width: 1210px;
}
.box{
  margin-top: 50px;
}
.box::after{
  content: ".";
  height:0;
  overflow: hidden;
  visibility: hidden;
  clear: both;
}
.img{
  width: 400px;
  height: 400px;
  border: 1px solid #666666;
  position: relative;
  float: left;
}
.img img{
  width: 100%;
  height: 100%;
}
.bri{
  position: absolute;
  width: 100px;
  height: 100px;
  left:0;
  top:0;
  background: rgb(233, 118, 118);
  opacity: .5;
  cursor: crosshair;
}
.big{
  width:100%;
  height: 100%;
  position: absolute;
  background: url("../img/shoplist/TB1lO6XJpXXXXc_XFXXLhc5_XXX_054423.jpg");
  left:401px;
  top:0;
  background-size: 100%;
  display:none;
}
.content{
  float: right;
}

shoplistxq.js:

$(function() {
  $(".img").mousemove(function (e) {
    $(".bri").css({
      "left": e.pageX - $(this).offset().left - $(".bri").width() / 2,
      "top": e.pageY - $(this).offset().top - $(".bri").height() / 2
    })
    if (parseFloat($(".bri").css("left")) < 0){
      $(".bri").css("left","0");
      // console.log("kk");
    } else if (parseFloat($(".bri").css("left")) >= parseFloat($(this).width() - $(".bri").width())){
      // alert("kk");
      $(".bri").css("left",$(this).width() - $(".bri").width());
    }
    if (parseFloat($(".bri").css("top")) < 0) {
      $(".bri").css("top", "0");
    } else if (parseFloat($(".bri").css("top")) >= parseFloat($(this).height() - $(".bri").height())) {
      // alert("kk");
      $(".bri").css("top", $(this).height() - $(".bri").height());
    }
    console.log($(".img").css("background"))
    // 放大倍数
    let num = 4;
    let left = -num * parseFloat($(".bri").css("left"));
    let top = -num * parseFloat($(".bri").css("top"));
    // console.log($(".bri").css("left"))
    $(".big").css({
      "background-size": num*100+"%",
      "background-position":left+"px " +top+"px",
      "display":"block"
      // "background": $(".img").css("background")
    });
  })
})
$(".img").mouseout(function (e) {
  $(".big").css({
    "display": "none"
    // "background": $(".img").css("background")
  });
})

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jquery submit()不能提交表单的解决方法
Apr 24 jQuery
详谈jQuery中使用attr(), prop(), val()获取value的异同
Apr 25 jQuery
jquery 禁止鼠标右键并监听右键事件
Apr 27 jQuery
jquery.masonry瀑布流效果
May 25 jQuery
jQuery自定义多选下拉框效果
Jun 19 jQuery
基于JQuery的Ajax方法使用详解
Aug 16 jQuery
jq源码解析之绑在$,jQuery上面的方法(实例讲解)
Oct 13 jQuery
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
Oct 20 jQuery
jQuery中库的引用方法
Jan 06 jQuery
浅谈ajax在jquery中的请求和servlet中的响应
Jan 22 jQuery
jQuery与vue实现拖动验证码功能
Jan 30 jQuery
jQuery实现简易聊天框
Feb 08 jQuery
jquery向后台提交数组的代码分析
Feb 20 #jQuery
jquery实现垂直手风琴导航栏
Feb 18 #jQuery
jQuery表单校验插件validator使用方法详解
Feb 18 #jQuery
jquery传参及获取方式(两种方式)
Feb 13 #jQuery
jQuery实现简易QQ聊天框
Feb 10 #jQuery
jQuery实现简单聊天室
Feb 08 #jQuery
jquery实现点击弹出对话框
Feb 08 #jQuery
You might like
php的XML文件解释类应用实例
2014/09/22 PHP
Zend Framework入门教程之Zend_Db数据库操作详解
2016/12/08 PHP
php + WebUploader实现图片批量上传功能
2019/05/06 PHP
PHP实现百度人脸识别
2019/05/06 PHP
利用404错误页面实现UrlRewrite的实现代码
2008/08/20 Javascript
JavaScript监测ActiveX控件是否已经安装过的代码
2008/09/02 Javascript
基于JavaScript实现继承机制之调用call()与apply()的方法详解
2013/05/07 Javascript
实例分析js和C#中使用正则表达式匹配a标签
2014/11/26 Javascript
JavaScript中的Math.sin()方法使用详解
2015/06/15 Javascript
基于replaceChild制作简单的吞噬特效
2015/09/21 Javascript
javascript性能优化之DOM交互操作实例分析
2015/12/12 Javascript
解决vue打包之后静态资源图片失效的问题
2018/02/21 Javascript
基于iScroll实现内容滚动效果
2018/03/21 Javascript
vue2.0获取鼠标位置的方法
2018/09/13 Javascript
element上传组件循环引用及简单时间倒计时的实现
2018/10/01 Javascript
layui中的switch开关实现方法
2019/09/03 Javascript
使用kbone解决Vue项目同时支持小程序问题
2019/11/08 Javascript
JavaScript进制转换实现方法解析
2020/01/18 Javascript
jQuery实现简易QQ聊天框
2020/02/10 jQuery
在Vue 中实现循环渲染多个相同echarts图表
2020/07/20 Javascript
vue-cli打包后本地运行dist文件中的index.html操作
2020/08/12 Javascript
解决pandas无法在pycharm中使用plot()方法显示图像的问题
2018/05/24 Python
Tensorflow 实现分批量读取数据
2020/01/04 Python
BIBLOO波兰:捷克的一家在线服装店
2018/03/09 全球购物
巴西网上药店:Drogaria Araujo
2021/01/06 全球购物
加拿大户外探险购物网站:SAIL
2020/06/27 全球购物
安全资料员岗位职责
2013/12/14 职场文书
英语专业学生个人求职信范文
2014/01/06 职场文书
《童年的发现》教学反思
2014/02/14 职场文书
五一劳动节活动记录
2014/03/23 职场文书
节水标语大全
2014/06/11 职场文书
学党史心得体会
2014/09/05 职场文书
党员群众路线教育实践活动剖析材料
2014/10/10 职场文书
致我们终将逝去的青春观后感
2015/06/10 职场文书
房地产置业顾问工作总结
2015/10/23 职场文书
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android