• jq-demo-放大镜


     1 <!DOCTYPE html>
     2 <html>
     3     <head>
     4         <meta charset="UTF-8">
     5         <title></title>
     6         
     7         <style>
     8             #smallImg {
     9                 position: absolute;
    10                 left: 50px;
    11                 top: 100px;
    12             }
    13             #smallImg, #smallImg img {
    14                  200px;
    15                 height: 200px;
    16             }
    17             #smallArea {
    18                  display: none; 
    19                   50px; height: 50px; background: rgba(200, 222,111, 0.3); 
    20                  position: absolute; left: 50px; top: 0;
    21             }
    22             
    23             #bigArea {
    24                  display: none; overflow: hidden; 
    25                   300px; height: 300px; background: rgba(200,111,222,0.3); 
    26                  position: absolute; left: 300px; top: 100px;
    27             }
    28             #bigImg {
    29                  800px; height: 800px;
    30                 position: absolute; left: 0; top: 0;
    31             }
    32             
    33         </style>
    34         
    35         <script type="text/javascript" src="js/jquery-1.12.3.js" ></script>
    36         <script>
    37             $(function(){
    38                 
    39                 //等比公式
    40                 //小图width/大图width == 小区域width/大区域width
    41                 $("#smallArea").width( $("#smallImg").width() * $("#bigArea").width() / $("#bigImg").width() );
    42                 $("#smallArea").height( $("#smallImg").height() * $("#bigArea").height() / $("#bigImg").height() );
    43                 
    44                 //放大系数
    45                 var scale = $("#bigImg").width() / $("#smallImg").width();
    46                  
    47                 //在小图中移动
    48                 $("#smallImg").mousemove(function(e){
    49                     $("#smallArea").show(); //显示小区域
    50                     $("#bigArea").show(); //显示大区域
    51                     
    52                     
    53                     var x = e.pageX - $("#smallImg").offset().left - $("#smallArea").width()/2;
    54                     var y = e.pageY - $("#smallImg").offset().top - $("#smallArea").height()/2;
    55                     
    56                     //控制不超出左右边界
    57                     if (x < 0){
    58                         x = 0;
    59                     }
    60                     else if (x > $("#smallImg").width()-$("#smallArea").width()){
    61                         x = $("#smallImg").width()-$("#smallArea").width();
    62                     }
    63                     //控制不超出上下边界
    64                     if (y < 0){
    65                         y = 0
    66                     }
    67                     else if (y > $("#smallImg").height()-$("#smallArea").height()) {
    68                         y = $("#smallImg").height()-$("#smallArea").height();
    69                     }
    70                     
    71                     //小区域移动
    72                     $("#smallArea").css({left:x, top:y});
    73                     
    74                     //大图移动
    75                     $("#bigImg").css({left: -scale*x,top: -scale*y});
    76                 })
    77                 
    78                 //移除小图
    79                 $("#smallImg").mouseleave(function(){
    80                     $("#smallArea").hide(); //隐藏小区域
    81                     $("#bigArea").hide(); //隐藏大区域
    82                 })
    83             })
    84         </script>
    85     </head>
    86     <body>
    87         <div id="smallImg">
    88             <img src="images/星际穿越.jpg" />
    89             <div id="smallArea"></div>
    90         </div>
    91         <div id="bigArea">
    92             <img id="bigImg" src="images/星际穿越.jpg" />
    93         </div>        
    94     </body>
    95 </html>

  • 相关阅读:
    屏幕后处理方案
    颜色空间
    汉字编码
    物理引擎的确定性研究
    关于List<T>.Sort方法
    Mono跨平台系统大小端问题
    谜之UnityEngine.Object
    第三方平台隐私条款
    Unity DownloadHandler测试
    了解Xcode Bitcode
  • 原文地址:https://www.cnblogs.com/1032473245jing/p/7513636.html
Copyright © 2020-2023  润新知