久久亚洲国产精品_久久久久久久91_狠狠久久婷婷_另类五月天_中文亚洲字幕_高清成人免费视频

歡迎來到億搜云建站平臺,全網營銷云系統加盟中心!

海量企業網站模板 · 任您選擇

美出特色,精出品質,一切為了企業更好的營銷

隱藏側欄
Beta
轉載

jQuery的鼠標懸停時放大圖片的效果制作

       懸停     2016-03-01     eycms     108     0    

以前我們如果要實現放大圖片效果必須寫段很長的js代碼,下面我來介紹利用jQuery的鼠標懸停時放大圖片的效果制作方法,代碼比以前少了N倍哦。

<!DOCTYPE html>
<html>
<head>
<meta charset="gb2312" />
<title>基于jQuery的鼠標懸停時放大圖片的效果制作</title>
<style>
* { margin:0; padding:0; }
img { vertical-align:bottom; border:none; }
body { background:#f0f0f0; height:800px; font-family:Arial;}
ul { list-style:none; }
h1{ font-size:20px; width:680px; margin:3% auto 5px; color:#202020; }
h6{ width:680px; margin:0 auto 20px; font-size:12px; font-weight:normal; color:#333; }
h6 a { color:#09c; }
ul#gallery { width:660px; margin:0 auto 10px; padding-left:20px; border:1px solid #d3d3d3; background:#fff; overflow:hidden; }
ul#gallery li { width:200px; height:200px; float:left; margin:20px 20px 20px 0; display:inline; }
ul#gallery li a.smallimage { background:#333; display:block; width:200px; height:200px; }
#bigimage { position:absolute; display:none; }
#bigimage img { width:400px; height:400px; padding:5px; background:#fff; border:1px solid #e3e3e3; }
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script>
//<![CDATA[
$(function(){ 
 
    var x = 22;
 var y = 20;
  
 $("a.smallimage").hover(function(e){
  $("body").append('<p id="bigimage"><img src="'+ this.rel + '" alt="" /></p>');
        $(this).find('img').stop().fadeTo('slow',0.5);  
  widthJudge(e);
     $("#bigimage").fadeIn('fast');
 },function(){
     $(this).find('img').stop().fadeTo('slow',1);
  $("#bigimage").remove();
    }); 
 
 $("a.smallimage").mousemove(function(e){
  widthJudge(e);
 }); 
 
    function widthJudge(e){
  var marginRight = document.documentElement.clientWidth - e.pageX; 
  var imageWidth = $("#bigimage").width();
  if(marginRight < imageWidth)
  {
      x = imageWidth + 22;
   $("#bigimage").css({top:(e.pageY - y ) + 'px',left:(e.pageX - x ) + 'px'}); 
  }else{
      x = 22;
      $("#bigimage").css({top:(e.pageY - y ) + 'px',left:(e.pageX + x ) + 'px'});
        }; 
 }
});
//]]>
</script>
</head>

<body>
<h1>基于jQuery的鼠標懸停時放大圖片的效果演示</h1>

<ul id="gallery">
  <li><a href="/" class="smallimage" rel="images/001_big.jpg"><img src="images/001_small.jpg" alt="" /></a></li>
  <li><a href="/" class="smallimage" rel="images/002_big.jpg"><img src="images/002_small.jpg" alt="" /></a></li>
  <li><a href="/" class="smallimage" rel="images/003_big.jpg"><img src="images/003_small.jpg" alt="" /></a></li>
</ul>
</body>
</html>

下面我來給大家一步不解析這個實例

HTML結構部分:

先編寫一個無序列表的結構,a標簽中的img標簽用來存放小圖片,a標簽添加一個rel屬性,用來存放大圖片的路徑。

 代碼如下

<UL id=gallery>
 <LI><A class=smallimage href=/site/eycmscn/upfile/201603/1631171611520.jpg><IMG alt="" src="images/001_small.jpg"></A></LI>
 
 <LI><A class=smallimage href=/site/eycmscn/upfile/201603/1631171613119.jpg><IMG alt="" src="images/002_small.jpg"></A></LI>
 
 <LI><A class=smallimage href=/site/eycmscn/upfile/201603/1631171614335.jpg><IMG alt="" src="images/003_small.jpg"></A></LI>
</UL>

CSS樣式表部分:

bigimage是用jQuery創建的一個p標簽的id,用來存放大圖片,設置其樣式為絕對定位,并先隱藏。給a標簽添加一個黑色的背景,是為了給圖片變暗的效果做鋪墊。就這樣,一個簡單的相冊效果就做好了

 代碼如下

ul#gallery { list-style:none; width:660px; margin:0 auto 10px; padding-left:20px; border:1px solid #d3d3d3; background:#fff; overflow:hidden; }

ul#gallery li { width:200px; height:200px; float:left; margin:20px 20px 20px 0; }

ul#gallery li a.smallimage { background:#333; /*添加一個黑色的背景為圖片變暗的效果做鋪墊*/ display:block; width:200px; height:200px; }

#bigimage { position:absolute; display:none; /*大圖片的父標簽設置相對定位并將顯示樣式設置為隱藏*/ }

#bigimage img { width:400px; height:400px; padding:5px; background:#fff; border:1px solid #e3e3e3; }


jQuery代碼部分:

先聲明2個變量x,y用來存放大圖片離鼠標的距離。在body中追加一個id為bigimage的p標簽,用來存放大圖片,大圖片的路徑就包含在了a標簽的rel屬性中。當鼠標在小圖片懸停的時候,將獲取到的鼠標在瀏覽器中的坐標賦值給大圖片絕對定位的坐標,并以淡入的效果顯示。之后,再給小圖片綁定一個mousemove事件,也就是當鼠標移動的時候,大圖片就會跟著鼠標移動了。看以下的代碼:

 代碼如下

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
$(function(){

 var x = 22;
 var y = 20;

 $("a.smallimage").hover(function(e){ //綁定一個鼠標懸停時事件
 //新建一個p標簽來存放大圖片,this.rel就是獲取到a標簽的大圖片的路徑,然后追加到body中
 $("body").append("<p id="bigimage"><img src="" this.rel "" alt="" /></p>"); 
  
 //改變小圖片的透明度為0.5,結合上面的CSS,看起來就象是圖片變暗了
 $(this).find("img").stop().fadeTo("slow",0.5);
  
 //將鼠標的坐標和聲明的x,y做運算并賦值給大圖片絕對定位的坐標,然后以fadeIn的效果顯示
 $("#bigimage").css({top:(e.pageY - y ) "px",left:(e.pageX x ) "px"}).fadeIn("fast");
  
 },function(){ <A href="http://www.sorcerylinux.org/">best australian pokies</A> //鼠標離開后 
 
 //將變暗的圖片復原
 $(this).find("img").stop().fadeTo("slow",1);
  
 //移除新增的p標簽
 $("#bigimage").remove();
 });
 
 $("a.smallimage").mousemove(function(e){ //綁定一個鼠標移動的事件
 
 //將鼠標的坐標和聲明的x,y做運算并賦值給大圖片絕對定位的坐標,這樣大圖片就能跟隨圖片而移動了
 $("#bigimage").css({top:(e.pageY -y ) "px",left:(e.pageX x ) "px"});
 });
});

//]]>
</script>


到這一步,效果已經差不多了,但是正如藍秋楓同志提到的,效果還并不完美。如果彈出的大圖片超過了瀏覽器的寬度就會出現滾動條,這對于用戶體驗來說的確很不好。趁周末有時間我又在原來的基礎上進行了修改。

先分析下思路,默認情況下,彈出的大圖片的位置始終是在當前鼠標指針的右側,如果當前鼠標指針離瀏覽器右側邊界的寬度小于彈出的大圖片的寬度時,就會出現圖片溢出瀏覽器的現象。那么只要寫一個語句判斷當前鼠標指針離瀏覽器右側的邊界的寬度是否小于大圖片的寬度,然后再根據這個判斷來顯示。

有了上面的思路就好辦了,為了使代碼更簡潔,提高復用性,我新增了一個widthJudge函數用于判斷寬度

 代碼如下


function widthJudge(e){
//頁面的總寬度減去鼠標當前的X坐標得到右側邊界的寬度
 var marginRight = document.documentElement.clientWidth - e.pageX;

//獲取彈出的大圖片的寬度
 var imageWidth = $("#bigimage").width();

//如果右側邊界的寬度小于彈出的大圖片的寬度
 if(marginRight < imageWidth)
 {
//重新計算變量x的值
  x = imageWidth 22;

//此時大圖片的位置應該是當前鼠標指針的寬度減去新的x的值
  $("#bigimage").css({top:(e.pageY - y ) "px",left:(e.pageX - x ) "px"}); 
 }else{ //否則
//仍將x定義為22,這一步千萬不能省略,因為之前x的值已經改變
  x = 22;

//如果右側的寬度值夠顯示大圖片,將仍然按照原來的位置顯示 
  $("#bigimage").css({top:(e.pageY - y ) "px",left:(e.pageX x ) "px"});
}; 
}

最后再結合上面的代碼,完整的jQuery代碼部分如下:

 代碼如下

<script type="text/javascript">
//<![CDATA[
$(function(){ 
 
 var x = 22;
 var y = 20;
  
 $("a.smallimage").hover(function(e){
 $("body").append("<p id="bigimage"><img src="" this.rel "" alt="" /></p>"); 
 $(this).find("img").stop().fadeTo("slow",0.5);  
  widthJudge(e); //調用寬度判斷函數
  $("#bigimage").fadeIn("fast");
 },function(){
  $(this).find("img").stop().fadeTo("slow",1);
  $("#bigimage").remove();
 }); 
 
 $("a.smallimage").mousemove(function(e){
  widthJudge(e); //調用寬度判斷函數
 }); 
 
 function widthJudge(e){
  var marginRight = document.documentElement.clientWidth - e.pageX; 
  var imageWidth = $("#bigimage").width();
  if(marginRight < imageWidth)
  {
   x = imageWidth 22;
   $("#bigimage").css({top:(e.pageY - y ) "px",left:(e.pageX - x ) "px"}); 
  }else{
   x = 22;
   $("#bigimage").css({top:(e.pageY - y ) "px",left:(e.pageX x ) "px"});
 }; 
 }
});
//]]>
</script>

解決了圖片溢出瀏覽器的問題,這個效果還算不錯了。如果你喜歡這個效果


--結束END--

本文鏈接: http://www.ayqos.cn/resources/hover/1535.html (轉載時請注明來源鏈接)

 
本文標簽: 全部

下班PC閱讀不方便?

手機也可以隨時學習開發

微信關注公眾號“億搜云”
"億搜云平臺前端開發教學"
每日干貨技術分享
 

×

成為 億搜云平臺 代理商!

關注

微信
關注

微信掃一掃
獲取最新優惠信息

億搜云平臺公眾號

客服

聯系
客服

很高興為您服務
尊敬的用戶,歡迎您咨詢,我們為新用戶準備了優惠好禮。 咨詢客服

聯系客服:

在線QQ: 40819446

客服電話: 15250286283

售前咨詢 售后服務
在線交談 智能小云

工作時間:

周一至周五: 09:00 - 17:00

WAP

手機
訪問

移動端訪問
手機上也能選模板

億搜云平臺手機端

久久亚洲国产精品_久久久久久久91_狠狠久久婷婷_另类五月天_中文亚洲字幕_高清成人免费视频
<rt id="64mma"><delect id="64mma"></delect></rt><rt id="64mma"></rt>
  • <tfoot id="64mma"><tr id="64mma"></tr></tfoot><button id="64mma"><input id="64mma"></input></button>
  • <code id="64mma"><nav id="64mma"></nav></code>
  • <button id="64mma"></button>
    <table id="64mma"><wbr id="64mma"></wbr></table><rt id="64mma"></rt>
    <tfoot id="64mma"></tfoot>
    日韩一区国产在线观看| 久久久蜜桃一区二区人| 亚洲精品国产系列| 国产精品久久久久久模特| 91精品国产一区二区三区动漫 | 尹人成人综合网| 亚洲欧美日韩在线观看a三区| 成人资源视频网站免费| 亚洲福利av在线| 亚洲色诱最新| 欧美日韩在线观看一区二区三区| 亚洲第一导航| 国产精品久久久久久久久婷婷| 国产欧美一区二区在线播放| 亚洲视频小说| 91嫩草在线| 中文视频一区视频二区视频三区| 国产婷婷精品| 秋霞在线观看一区二区三区| 亚洲美洲欧洲综合国产一区| 91精品国产高清久久久久久91裸体 | 久久99精品久久久久久秒播放器 | 99re6热在线精品视频播放速度| 久久久神马电影| 亚洲国产精品第一区二区三区| 国产69精品久久久久9999apgf| 亚洲激情一区二区三区| 亚洲一区影院| 亚洲欧洲免费无码| 狼狼综合久久久久综合网| 亚洲福利av| 国产91免费视频| 亚洲国产精品www| 日韩精品一区二区三区丰满| 在线一区免费观看| 制服诱惑一区| 久久久久免费网| 另类图片国产| 精品999日本| 日韩精品大片| 岛国视频一区免费观看| 欧美日韩专区| 欧美日本韩国国产| 51国产成人精品午夜福中文下载| 久久福利一区| 欧美日韩一区在线观看视频| 久久精品国产精品国产精品污 | 亚洲巨乳在线观看| 国产乱人伦精品一区二区| 在线视频亚洲| 亚洲视频一区| 欧美在线高清| 欧美亚洲另类久久综合| 99久久国产免费免费| 国产精品日本一区二区| 欧美日韩一区二区三区在线视频 | 少妇特黄a一区二区三区| 高清不卡日本v二区在线| 亚洲三级视频| 一级做a爰片久久| 日本高清不卡三区| 国产视频不卡| 高清免费日韩| 动漫美女被爆操久久久| 国产精品乱看| 国产一区二区精品| 18成人免费观看视频| 国产一区二区三区四区hd| 中文字幕精品—区二区日日骚| 欧美日韩精品不卡| 久久精品五月婷婷| 久久久人人爽| 欧美精品国产精品久久久| 久久久久久久有限公司| 狼狼综合久久久久综合网| 久久99精品久久久久久水蜜桃| 久久久99爱| 成人综合色站| 裸模一区二区三区免费| 极品日韩久久| 老司机精品福利在线观看| 欧美久久综合性欧美| 青青影院一区二区三区四区| 蜜桃视频在线观看91| 久久久久久国产精品mv| 欧美另类网站| 亚洲一区二区三区涩| 亚洲精品一区二区三| 亚洲欧洲日韩精品| 欧美在线亚洲| 亚洲成人自拍视频| 一区二区动漫| 超碰97国产在线| 风间由美一区二区三区| 久久综合九色综合网站| 亚洲日本一区二区三区在线不卡 | 亚洲春色在线视频| 欧美一区激情视频在线观看| 精品动漫3d一区二区三区免费| 国内精品久久久久久久影视麻豆 | 国产精品乱子乱xxxx| 媚黑女一区二区| 韩国成人av| 在线观看福利一区| 精品成人在线| 老牛国产精品一区的观看方式 | 免费久久一级欧美特大黄| 视频一区二区在线| 国精品一区二区三区| 午夜影院日韩| 免费亚洲一区二区| 国内精品久久久久久久影视蜜臀 | 午夜精品电影在线观看| 影音先锋在线一区| 99中文视频在线| 天堂社区 天堂综合网 天堂资源最新版 | 美女被啪啪一区二区| 亚洲国产精品久久久久久女王| 在线成人国产| 国产99在线免费| 欧美一区2区三区4区公司二百 | 3d动漫精品啪啪一区二区三区免费 | 国产一区二区无遮挡| 久久亚洲综合网| 午夜久久资源| 亚洲影音一区| 日韩免费av一区二区三区| 在线亚洲一区| 亚洲va久久久噜噜噜久久狠狠| 亚洲免费精品| 欧美亚洲另类在线一区二区三区| 亚洲国产专区校园欧美| 国内精品久久国产| 激情综合网址| 欧美日韩国产高清视频| 亚洲欧美视频| 欧美1区视频| 国产美女精品在线观看| 在线看片欧美| 久久久久网址| 久久久精品日韩| 欧美日韩1080p| 久久精品第九区免费观看| 国产精品日韩精品欧美精品| 香蕉久久免费影视| 国产99在线免费| 一区二区精品在线| 欧美在线亚洲综合一区| 国产高清一区视频| 一区二区欧美日韩| 久久精品免费| 成人免费视频网站入口| 黄色成人精品网站| 奇米精品在线| 极品日韩久久| 97人人香蕉| 国产亚洲一级| 国产一区再线| 亚洲国产精品视频一区| 久久精品99| 成人在线观看网址| 免费日韩精品中文字幕视频在线| 欧美福利电影在线观看| 天堂精品一区二区三区| 久久精品国产精品国产精品污| 久久久久久黄| 国产欧美日韩亚洲一区二区三区| 亚洲成人一区二区三区| 蜜桃臀一区二区三区| 国产精品v欧美精品∨日韩| 性欧美精品高清| 亚洲一区欧美二区| 国产欧美三级| 国产亚洲一区在线播放| 亚洲激情另类| 亚洲欧洲视频| 亚洲精选在线| 在线一区视频| 日韩亚洲不卡在线| 一区二区三区四区国产| 日韩五码在线| 亚洲激情午夜| 亚洲黄色三级| 一本色道久久综合亚洲精品不卡| 国产综合网站| 亚洲美女一区| 国产伦精品一区二区三区视频黑人| 最新国产拍偷乱拍精品| 亚洲国产欧洲综合997久久| 亚洲激情社区| 久久国产成人| 国产精品区一区二区三在线播放| 国产精品乱码视频| 精品综合久久| 日日骚一区二区网站| 樱花www成人免费视频| 欧美午夜国产| 亚洲一区二区在线免费观看| 欧美综合77777色婷婷| 国产精品制服诱惑|