最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jQuery實(shí)現(xiàn)放大鏡案例

 更新時間:2020年10月19日 17:02:39   作者:willard_cui  
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)放大鏡案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了jQuery實(shí)現(xiàn)放大鏡效果的具體代碼,供大家參考,具體內(nèi)容如下

動畫:

1、鼠標(biāo)移入顯示區(qū)圖片時,顯示選擇框;

2、放大鏡特效,將圖片位于選擇框內(nèi)的部分放大顯示;

3、點(diǎn)擊下方小圖片和左右移動按鈕時正確的顯示圖片

實(shí)現(xiàn)方法:

1、放大效果:放大區(qū)的與顯示區(qū)使用相同的圖片,并設(shè)置放大區(qū)圖片的長寬為顯示區(qū)的二倍;

2、選擇框拖動效果:鼠標(biāo)移動時獲得鼠標(biāo)的坐標(biāo),并根據(jù)選擇框的和圖片的offset()屬性計(jì)算出選擇框的新位置。同時修改放大區(qū)圖片的位置,使其與選擇框內(nèi)的部分對應(yīng);

3、點(diǎn)擊小圖片效果:修改小圖片的class改變其樣式,同時修改顯示區(qū)和放大區(qū)圖片的src顯示對應(yīng)的圖片;

4、左移按鈕:點(diǎn)擊時通過each函數(shù)找到當(dāng)前顯示的圖片,然后判斷是否為第一張圖片,如果是第一張圖片則將最后一張圖片設(shè)置為要顯示的圖片,修改其樣式,同時修改顯示區(qū)和放大區(qū)圖片的src顯示對應(yīng)的圖片。若果不是第一張圖片,則將前一張圖片設(shè)置為要顯示的圖片,修改其樣式,同時修改顯示區(qū)和放大區(qū)圖片的src顯示對應(yīng)的圖片;

5、右移按鈕:原理有左移按鈕相同。

(詳見下方代碼)

動畫效果:

<!DOCTYPE html>
 
<head>
 <meta charset="UTF-8">
 <title>放大鏡</title>
 <script src="../jquery.min.js"></script>
 <link rel="stylesheet" href="style.css" >
</head>
<body>
<div id="container">
 <div class="box">
 <div class="normal"><img src="images/1.jpg" alt="圖片">
 <div class="kuang"></div>
 </div>
 <div class="small">
  <div class="left"><img src="images/left.gif" alt="left"></div>
  <div class="right"><img src="images/right.gif" alt="right"></div>
  <div class="item">
  <ul>
  <li class="selected"><img src="images/1.jpg" alt="圖片"></li>
  <li><img src="images/2.jpg" alt="圖片"></li>
  <li><img src="images/3.jpg" alt="圖片"></li>
  <li><img src="images/4.jpg" alt="圖片"></li>
  <li><img src="images/5.jpg" alt="圖片"></li>
  </ul>
  </div>
 </div>
 </div>
 <div class="big"><img src="images/1.jpg" alt="圖片"></div>
</div>
<script type="text/javascript" src="script.js"></script>
</body>
</html>

css代碼

*{
 margin: 0;
 padding: 0;
 list-style: none;
}
#container{
 margin: 50px auto;
 width: 1000px;
 
}
.box{
 position: relative;
 float: left;
 width: 400px;
 height: 380px;
}
.normal{
 position: relative;
 
 width: 400px;
 height: 300px;
}
.normal img{
 width: 400px;
 height: 300px;
}
.small{
 margin-top: 10px;
 width: 400px;
 height: 60px;
 
}
.small .left{
 position: relative;
 float: left;
 width: 10px;
 height: 60px;
}
.small .right{
 position: relative;
 float: right;
 width: 10px;
 height: 60px;
}
.item ul li{
 position: relative;
 float: left;
 margin-left: 5px;
 padding: 1px;
 width: 66px;
 height: 40px;
 border: 1px solid #ccc;
}
.item ul li img{
 
 width: 100%;
 height:100%;
}
.big{
 display: none;
 position: relative;
 float: left;
 margin-left: 20px;
 width: 400px;
 height: 300px;
 overflow: hidden;
}
.big img{
 position: relative;
 left: 0;
 top: 0;
 width: 800px;
 height: 600px;
}
.box .kuang{
 display: none;
 position: absolute;
 left: 0;
 top: 0;
 width: 200px;
 height: 150px;
 opacity: 0.5;
 background: #00f;
}
.item ul .selected{
 border: 1px solid orange;
}

jQuery代碼

$(document).ready(function () {
 //當(dāng)鼠標(biāo)進(jìn)入圖片時顯示放大框和放大圖像
 $(".normal").mouseenter(function () {
 $(".kuang").show();
 $(".big").show();
 })
 //當(dāng)鼠標(biāo)離開圖片時隱藏放大框和放大圖像
 $(".normal").mouseleave(function () {
 $(".kuang").hide();
 $(".big").hide();
 })
 //按下鼠標(biāo)拖動放大框,右側(cè)放大顯示圖片位于放大框內(nèi)的部分
 $(".kuang").mousedown(function (e) {
 x=e.pageX-$(this).offset().left;
 y=e.pageY-$(this).offset().top;
 // console.log($(this).offset().top);
 //console.log(y);
 $(document).on("mousemove",function(e){
  
  var _x=e.pageX-x-$(".box").offset().left;
  var _y=e.pageY-y-$(".box").offset().top;
 
  //設(shè)置_x和_y的范圍
  if (_x<0){
  _x=0;
  }else if (_x>200){
  _x=200;
  }
  if (_y<0){
  _y=0;
  } else if(_y>150){
  _y=150;
  }
  $(".kuang").css({"left": _x, "top": _y});
  $(".big img").css({"left":-2*_x,"top":-2*_y});
 })
 })
 //鼠標(biāo)抬起時停止取消拖動
 $(document).mouseup(function () {
 $(document).off("mousemove");
 })
 //點(diǎn)擊左側(cè)下方小圖片時,左側(cè)上方顯示相應(yīng)的圖片,且左側(cè)放大區(qū)也更改為與小圖片對應(yīng)的圖片
 $(".item ul li img").click(function () {
 $(this).parent().addClass("selected")
 $(this).parent().siblings().removeClass("selected");
 $(".normal img").attr("src",$(this).attr("src"));
 $(".big img").attr("src",$(this).attr("src"));
 
 });
 //點(diǎn)擊向左按鈕,選中當(dāng)前顯示圖片的前一張圖片,小圖片樣式做相應(yīng)的修改。圖片顯示區(qū)和右側(cè)圖片放大區(qū)都改為前一張圖片
 $(".left").click(function () {
 $(".small li").each(function (index,value) {
  if($(value).attr("class")=="selected"){
  //如果當(dāng)前顯示第一張圖片,則點(diǎn)擊向左按鈕時顯示最后一張圖片
  if(index==0){
   $(value).removeClass("selected")
   $(".small li").eq(4).addClass("selected");
   $(".normal img").attr("src",$(".small li").eq(4).children().eq(0).attr("src"));
   $(".big img").attr("src",$(".small li").eq(4).children().eq(0).attr("src"));
   return false;
  }
  if (index>0) {
   $(value).removeClass("selected").prev().addClass("selected");
   console.log($(value).prev().children().eq(0).attr("src"));
   $(".normal img").attr("src",$(value).prev().children().eq(0).attr("src"));
   $(".big img").attr("src",$(value).prev().children().eq(0).attr("src"));
  }
  }
 
 })
 
 });
 //點(diǎn)擊向右按鈕,選中當(dāng)前顯示圖片的下一張圖片,小圖片樣式做相應(yīng)的修改。圖片顯示區(qū)和右側(cè)圖片放大區(qū)都改為下一張圖片
 $(".right").click(function () {
 $(".small li").each(function (index,value) {
  if($(value).attr("class")=="selected"){
  //如果當(dāng)前顯示最后一張圖片,則點(diǎn)擊向右按鈕時顯示第一張按鈕
  if(index==4){
   $(value).removeClass("selected")
   $(".small li").eq(0).addClass("selected");
   $(".normal img").attr("src",$(".small li").eq(0).children().eq(0).attr("src"));
   $(".big img").attr("src",$(".small li").eq(0).children().eq(0).attr("src"));
   return false;
  }
  if (index<4) {
   $(value).removeClass("selected").next().addClass("selected");
   $(".normal img").attr("src",$(value).next().children().eq(0).attr("src"));
   $(".big img").attr("src",$(value).next().children().eq(0).attr("src"));
   return false;
  }
  }
 
 })
 
 });
 
})

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • jQuery學(xué)習(xí)筆記之2個小技巧

    jQuery學(xué)習(xí)筆記之2個小技巧

    這篇文章主要介紹了jQuery學(xué)習(xí)筆記之2個小技巧,1.jQuery功能函數(shù)前綴,2.解決window.onload函數(shù)沖突,非常不錯,推薦給小伙伴參考下
    2015-01-01
  • jQuery.autocomplete 支持中文輸入(firefox)修正方法

    jQuery.autocomplete 支持中文輸入(firefox)修正方法

    jQuery.autocomplete 是jquery的流行插件,,能夠很好的實(shí)現(xiàn)輸入框的自動完成(autocomplete)、建議提示(input suggest)功能,支持ajax數(shù)據(jù)加載。
    2011-03-03
  • jQuery實(shí)現(xiàn)飛機(jī)大戰(zhàn)游戲

    jQuery實(shí)現(xiàn)飛機(jī)大戰(zhàn)游戲

    這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)飛機(jī)大戰(zhàn)游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • jquery獲取easyui日期控件的值實(shí)現(xiàn)方法

    jquery獲取easyui日期控件的值實(shí)現(xiàn)方法

    下面小編就為大家?guī)硪黄猨query獲取easyui日期控件的值實(shí)現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • jQuery中的常用事件總結(jié)

    jQuery中的常用事件總結(jié)

    jquery中一些事件函數(shù)使用小結(jié),需要的朋友可以參考下。
    2009-12-12
  • 使用JQuery模仿實(shí)現(xiàn)淘寶搜索效果

    使用JQuery模仿實(shí)現(xiàn)淘寶搜索效果

    這篇文章主要介紹了如何利用JQuery模仿實(shí)現(xiàn)淘寶中的搜索效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動手嘗試一下
    2022-04-04
  • jQuery+CSS3+Html5實(shí)現(xiàn)彈出層效果實(shí)例代碼(附源碼下載)

    jQuery+CSS3+Html5實(shí)現(xiàn)彈出層效果實(shí)例代碼(附源碼下載)

    款Jquery+CSS3+Html5實(shí)現(xiàn)彈出層效果,應(yīng)用范圍很廣泛,比如用在消息提示、彈出層顯示內(nèi)容、彈出層登錄等,帶遮罩效果,非常實(shí)用,對此功能感興趣的朋友可以參考下本地代碼
    2016-05-05
  • jQuery入門介紹之基礎(chǔ)知識

    jQuery入門介紹之基礎(chǔ)知識

    本文主要給大家介紹了些jQuery的基礎(chǔ)知識,算是一個入門的小知識庫,包含jQuery簡介、對象轉(zhuǎn)換、以及基本選擇器和層次選擇器等知識點(diǎn)。
    2015-01-01
  • jQuery中prevAll()方法用法實(shí)例

    jQuery中prevAll()方法用法實(shí)例

    這篇文章主要介紹了jQuery中prevAll()方法用法,實(shí)例分析了prevAll()方法的功能、定義及查找匹配元素集合之前所有同輩元素的使用技巧,需要的朋友可以參考下
    2015-01-01
  • 基于jquery的給文章加入關(guān)鍵字鏈接

    基于jquery的給文章加入關(guān)鍵字鏈接

    最近在做一個網(wǎng)站,遇到需要給網(wǎng)站內(nèi)所有的文章加關(guān)鍵字鏈接的問題,我們在瀏覽一些網(wǎng)站的文章的時候,會發(fā)現(xiàn)文章里面的某些關(guān)鍵字是加了鏈接的,并且高亮顯示。
    2010-10-10

最新評論

洛宁县| 砚山县| 中江县| 德格县| 台北市| 纳雍县| 麻栗坡县| 南京市| 阳山县| 锡林浩特市| 长岛县| 合作市| 宁城县| 武邑县| 武乡县| 桦南县| 乡宁县| 普洱| 峨眉山市| 洪洞县| 荃湾区| 罗平县| 洛隆县| 汕头市| 虞城县| 海安县| 大石桥市| 长子县| 神木县| 安庆市| 银川市| 澄江县| 鸡西市| 蒲江县| 阿巴嘎旗| 龙井市| 大方县| 山东省| 桃园县| 靖安县| 榆树市|