麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

js自制圖片放大鏡功能

2019-11-19 17:47:29
字體:
來源:轉載
供稿:網友

本文實例為大家分享了Android九宮格圖片展示的具體代碼,供大家參考,具體內容如下

注釋:
small img size:600x400
big img size:1200x800

原理:
1、大圖是小圖的 2倍整
2、大圖以小圖片中心點為中心
      a.transform : translate(-50%,-50%)
      b.(rate-0.5)*50%
      c.clip : rect(t,r,b,l) 以小圖邊界為邊界
3、rect必須有absolute
4、獲取鼠標在圖片中的位置
     a.獲取鼠標位置 XY
     b.獲取圖片位置、寬度、高度
             i.得到鼠標在圖片的百分比位置
             ii.將百分比位置應用于大圖 left,top 

問題:
居中理解太差:
          absolute ,left ,top,right,bottom,margin
放大縮小問題:
           起初: transform: scale() 縮放
           利用 transition 過渡
                 結果,采用這種方法會使得鼠標移動時很卡頓
                       可能原因:每次hover 都會觸發 transition事件
           解決方法:采用了 Animate 動畫來實現縮放 

細節:
以 onmouse 事件 e 動態獲得 e.pageX 和 e.pageY
以 $().offset().top /left 獲取圖片位置
以 $().width() /height() 獲取圖片寬高
      在錯誤的操作中也忘了獲取 class 的方法
           $().attr("class")
           $().prop("class")
                    event.traget.className 

如果要實現 hover出現 透明的塊狀就在外部 opacity:0.5; 設置z-index就可以了。

<html> <head>  <meta charset="UTF-8">  <title>WEBGOD</title>  <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"/>  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>  <script src="js/bootstrap.min.js" type="text/javascript" charset="utf-8"></script>  <style type="text/css">   #warpper{    margin: 0 auto;    padding: 0;    position: relative;    z-index: 1;    width: 600px;    height: 400px;   }   .small{    text-align: center;   }   .big{    display: none;    clip: rect(200px,900px,600px,300px);    position: absolute;    width: 1200px;    height: 800px;    top: 50%;    left:50%;    transform: translate(-50%,-50%);   }   .big img{    position: absolute;    width: 600px;    height: auto;    left: 0;    right: 0;    top: 0;    bottom: 0;    margin: auto;   }  </style> </head> <body>     <div id="warpper">   <div class="small">    <img src="img/small_19.jpg"/>   </div>   <div class="big">    <img src="img/img_19.jpg"/>   </div>  </div>  <script type="text/javascript">   $(function(){    var x,y,left,top,width,height,imgWidth,imgHeight,rateX,rateY;    $("#warpper").hover(function(){     $(".big").css("display","block");     $(".big img").animate({"width":"1200px"},500);    },function(){     $(".big img").animate({"width":"600px"},1);     $(".big").css("display","none");    })    $("#warpper").on("mousemove",function(e){     x = e.pageX;     y = e.pageY;     top = $(".small img").offset().top;     left = $(".small img").offset().left;     width = $(".small img").width();     height = $(".small img").height();     //     imgWidth = $(".big img").width();     imgHeight = $(".big img").height();     rateX = (left+width-x)/width;     rateY = (top+height-y)/height;     if(rateX>0&&rateY>0&&rateX<=1&&rateY<=1){      $(".big img").css("left",(rateX-0.5)*50+"%");      $(".big img").css("top",(rateY-0.5)*50+"%");     }    })   })  </script> </body></html>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久国产精品二区 | 国产亚洲欧美视频 | 草久免费 | 久久成人精品视频 | 91 视频网站 | 亚洲精品午夜在线 | 欧美日韩一区,二区,三区,久久精品 | 最新在线黄色网址 | 亚洲午夜久久久精品一区二区三区 | 久久免费视频7 | 毛片免费在线观看 | 久草手机视频在线观看 | 午夜视频福利 | 久久久久久久久久久av | 免费久久久久 | 蝌蚪久久窝 | www视频免费观看 | av在线免费观看播放 | 欧美黄色大片免费观看 | 免费国产人成网站 | 日本一区二区高清不卡 | 日韩视频精品一区 | 韩国美女一区 | 国产精品久久久久久久久久三级 | 911网站大全在线观看 | 日韩色视频 | 91成人免费看片 | av成人免费看 | 欧美成人一区免费视频 | 史上最强炼体老祖动漫在线观看 | 久久精品探花 | 黄色影院在线看 | 性欧美性欧美 | 国产99久久久久 | 久草高清视频 | 久久精品视频免费观看 | 九九精品在线观看视频 | 色播亚洲 | 海角在线观看91一区二区 | 亚洲电影免费观看国语版 | 精品国产九九九 |