成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

另一款有意思的JS圖片放大鏡

開發 前端
先準備兩幅內容相同尺寸不同的圖片,這里我們找了一個400×300像素的縮略圖small_hill.gif,一個800×600像素的大圖big_hill.gif。然后再準備一個“放大鏡”的圖片,注意它中間部分必須是透明的。

制作思路:“放大鏡”后有一幅背景圖,它是“放大了”的圖的原本。我們通過移動“放大鏡”時適當調整背景圖的位置,使它顯示的剛好是需要要放大的部分。

效果預覽:

在線效果演示: (點這里在新窗口中查看)

制作步驟

先準備兩幅內容相同尺寸不同的圖片,這里我們找了一個400×300像素的縮略圖small_hill.gif,一個800×600像素的大圖big_hill.gif。然后再準備一個“放大鏡”的圖片,注意它中間部分必須是透明的,這里我們準備了一個綠色的方框 viewer.gif。

編寫如下的代碼:

以下是兩幅圖的代碼,都它們作為層。第一幅是縮略圖,第二幅是“放大鏡”,首先將它的背景移到不可見的地方; 其中“ onclick="moveme=!moveme" ”表示每次點擊它都改變“moveme”的布爾值。

  1. <img src="small_hill.gif" id="bgLayer" style="position:absolute; left:150px; top:50px;">   
  2. <img src="viewer.gif" id="myviewer" onclick="moveme=!moveme" onmousemove="viewit(this)"   
  3. style="left:0;top:0;background-repeat:no-repeat; background-position:2000px 2000px;position:absolute;">   

以下是JavaScript腳本:

  1. <script language="JavaScript">   
  2. <!--   
  3. var viewer_bgcolor="#FFFFFF"//放大鏡的背景色,建議設成和網頁背景色相同。   
  4. var bigmap="big_hill.gif"//大圖路徑   
  5.  
  6. document.all.myviewer.style.backgroundImage='url('+bigmap+')';   
  7. document.all.myviewer.style.backgroundColor=viewer_bgcolor;   
  8. //因為大圖作為背景無法設定和讀取它的尺寸,只好把它的一個副本作為實圖,但不可見:   
  9. document.write('<img id="getsize" style="position:absolute; left:-2000px; top:-2000px;" src="'+bigmap+'">');   
  10. var moveme=false//該布爾值決定“放大鏡”是否隨鼠標移動,初始值為否   
  11. function viewit(obj){   
  12. if (moveme){   
  13. //以下兩行控制“放大鏡”的移動:   
  14. obj.style.left=event.x+parseInt(document.body.scrollLeft)-parseInt(obj.width)/2;   
  15. obj.style.top=event.y+parseInt(document.body.scrollTop)-parseInt(obj.height)/2;   
  16. //以下幾行調整當“放大鏡”移動時其背景圖的位置,使其中心移到縮略圖的某點時,其背景圖上相應的點也移動到其中心。   
  17. //其中Nx,Ny指大圖寬和高分別是小圖的幾倍,bgx,bgy是背景圖當移到的X,Y坐標。   
  18. Nx=parseInt(document.all.getsize.width)/parseInt(document.all.bgLayer.width);   
  19. bgx=(-1)*(Nx-1)*(event.x-parseInt(document.all.bgLayer.style.left)+parseInt(document.body.scrollLeft))-parseInt(obj.style.left)+parseInt(document.all.bgLayer.style.left);   
  20. Ny=parseInt(document.all.getsize.height)/parseInt(document.all.bgLayer.height);   
  21. bgy=(-1)*(Ny-1)*(event.y-parseInt(document.all.bgLayer.style.top)+parseInt(document.body.scrollTop))-parseInt(obj.style.top)+parseInt(document.all.bgLayer.style.top);   
  22.  
  23. obj.style.backgroundPosition=bgx+" "+bgy;   
  24. }   
  25. }   
  26. //-->   
  27. </script>   
  28.  

【編輯推薦】

  1. 中文前端UI框架Kit:超酷的瀑布流特效動畫
  2. JavaScript圖片變換效果(IE only)
  3. 中文前端UI框架Kit:搖頭動畫
  4. JavaScript馬賽克遮罩圖片幻燈片切換類
  5. 看JavaScript如何實現頁面自適
責任編輯:張偉 來源: 源碼天空
相關推薦

2012-05-30 10:43:47

jQuery

2023-05-15 09:16:18

CSSCSS Mask

2017-01-22 17:25:55

Android放大鏡效果源碼分析

2015-03-10 11:36:25

jQuery仿淘寶產品圖片放大鏡代碼

2018-06-24 16:39:28

Tomcat異常線程

2020-12-12 13:50:16

云開發

2021-01-27 13:54:05

開發云原生工具

2021-03-25 06:12:55

SVG 濾鏡CSS

2023-08-02 08:00:00

JavaScriptWeb

2022-08-15 22:34:47

Overflow方向裁切

2022-07-11 13:09:26

mmapLinux

2022-06-15 07:21:47

鼠標指針交互效果CSS

2017-08-01 00:52:07

kafka大數據消息總線

2013-08-28 09:46:09

Debian LinuLinux發行版

2011-09-08 17:50:34

Windows7放大鏡

2012-06-19 16:49:19

Web開發

2021-04-23 07:51:56

CSS Container Q Chrome

2021-04-09 08:23:30

Css前端加載動畫

2012-05-22 10:12:59

jQuery

2015-10-28 13:57:29

融合架構華三UIS
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩在线观看中文字幕 | 99爱在线| 视频在线一区二区 | 日韩欧美精品一区 | 午夜影院在线观看 | 在线a视频 | 男人av在线播放 | 国产一区二区在线看 | 狠狠av| 成人精品一区二区三区四区 | 国产成人久久av免费高清密臂 | 亚洲精品亚洲人成人网 | 黄色一级电影免费观看 | 成人在线视频免费播放 | 91久久国产综合久久91精品网站 | 精品乱码一区二区 | 日韩中文字幕一区二区三区 | 男人的天堂视频网站 | 日韩一二三区 | 国产亚洲精品久久情网 | 中文字幕第二区 | 国产清纯白嫩初高生在线播放视频 | 国产性网 | 欧美日韩亚洲系列 | 亚洲精品中文字幕在线 | 欧美一级片久久 | 亚洲视频三| 99久久精品一区二区成人 | 日本激情视频中文字幕 | 精品国产欧美一区二区 | 午夜久久久 | 亚洲精品视频在线看 | av一区二区三区四区 | 99精品一区二区三区 | 99热在线播放 | 狠狠干网站 | av中文字幕在线播放 | 久久久妇女国产精品影视 | 国产激情视频在线观看 | 日韩在线国产 | 欧美视频在线免费 |