原生JS實(shí)現(xiàn)圖片翻書(shū)效果
下面給大家分享基于原生js實(shí)現(xiàn)的圖片翻書(shū)效果,具體代碼如下所示:
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>JS實(shí)現(xiàn)圖片翻書(shū)效果-懶人圖庫(kù)</title> <META http-equiv=imagetoolbar content=no> <STYLE type=text/css> #center { LEFT: 50%; POSITION: absolute; TOP: 50% } #DHTMLBOOK { BACKGROUND: #000; LEFT: -210px; VISIBILITY: hidden; WIDTH: 420px; POSITION: relative; TOP: -160px; HEIGHT: 320px } #TXTBOX { FONT-SIZE: 0.8em; WIDTH: 410px; COLOR: #aba193; FONT-FAMILY: verdana; POSITION: absolute; TOP: 320px; TEXT-ALIGN: center } .page { OVERFLOW: hidden; BORDER-LEFT: #000000 1px solid; WIDTH: 50%; CURSOR: pointer; POSITION: absolute; HEIGHT: 100% } .right { BORDER-RIGHT: #000000 1px solid; LEFT: 50% } .turn { BACKGROUND: #000000 } .img { WIDTH: 200%; POSITION: absolute; HEIGHT: 100% } </STYLE> <SCRIPT type=text/javascript><!-- document.onselectstart = function () { return false; } var nI = 0; var kI = 0; var run = false; function setOpacity(obj,o) { if (o<0) o=0; else if (o>100) o = 100; if (obj.filters)obj.filters.alpha.opacity=o; else obj.style.opacity = o/100; } function TPR__(p) { P1.style.left = 50-(2.5*p)+"%"; P1.style.width = (2.5*p)+"%"; setOpacity(P1i, .5*p*p); if (p == 20) run = false; } function TPR_(p) { debugger P2.style.width = 50-(2.5*p)+"%"; setOpacity(P2i, 100-.5*(p*p)); if (p == 20) { P2i.src = IMGSRC[kI].src; setOpacity(P2i, 100); P2.style.width = "50%"; for(var i=1; i<=20; i++) setTimeout("TPR__("+i+")", i*32); } } function TPR() { if (!run) { run = true; P01i.src = IMGSRC[kI].src; P1.style.width = 0; kI++; if (kI>=nI) kI = 0; titLe(kI); P02i.src = IMGSRC[kI].src; P1i.src = IMGSRC[kI].src; for (var i=1; i<=20; i++) setTimeout("TPR_("+i+")", i*32); } else setTimeout("TPR()", 100); } function TPL__(p) { P2.style.width = (2.5*p)+"%"; setOpacity(P2i, .5*p*p); if (p == 20) run = false; } function TPL_(p) { P1.style.left = (2.5*p)+"%"; P1.style.width = 40+(10-2.5*p)+"%"; setOpacity(P1i, 100-.5*(p*p)); if (p == 20) { P1i.src = IMGSRC[kI].src; setOpacity(P1i, 100); P1.style.left = 0; P1.style.width = "50%"; for(var i=1; i<=20; i++) setTimeout("TPL__("+i+")", i*32); } } function TPL() { if (!run) { run = true; P02i.src = IMGSRC[kI].src; P2.style.width = 0; kI--; if (kI < 0) kI = nI-1; titLe(kI); P01i.src = IMGSRC[kI].src; P2i.src = IMGSRC[kI].src; for(var i=1; i<=20; i++) setTimeout("TPL_("+i+")", i*32); } else setTimeout("TPL()", 100); } function titLe(p) { document.getElementById("TXTBOX").innerHTML = IMGSRC[p].alt; } onload = function() { debugger IMGSRC = document.getElementById("imgsrc").getElementsByTagName("img"); DB = document.getElementById("DHTMLBOOK"); P01 = DB.getElementsByTagName("span")[0]; P01i = P01.getElementsByTagName("img")[0]; P02 = DB.getElementsByTagName("span")[1]; P02i = P02.getElementsByTagName("img")[0]; P1 = DB.getElementsByTagName("span")[2]; P1i = P1.getElementsByTagName("img")[0]; P2 = DB.getElementsByTagName("span")[3]; P2i = P2.getElementsByTagName("img")[0]; nI = IMGSRC.length; P1i.src = IMGSRC[kI].src; P2i.src = IMGSRC[kI].src; titLe(kI); DB.style.visibility = "visible"; } //--> </SCRIPT> <META content="MSHTML 6.00.6000.16809" name=GENERATOR></HEAD> <BODY> <DIV id=center> <DIV id=DHTMLBOOK><SPAN class=page onMouseDown="return false;" ondblclick=TPL(); onclick=TPL();><IMG class=img></SPAN> <SPAN class="page right" onmousedown="return false;" ondblclick=TPR(); onclick=TPR();><IMG class=img style="LEFT: -100%"></SPAN> <SPAN class="page turn" onMouseDown="return false;" ondblclick=TPL(); onclick=TPL();><IMG class=img style="FILTER: alpha(); opacity: 1"></SPAN> <SPAN class="page turn right" onmousedown="return false;" ondblclick=TPR(); onclick=TPR();><IMG class=img style="FILTER: alpha(); LEFT: -100%; opacity: 1"></SPAN> <DIV id=TXTBOX></DIV></DIV></DIV> <DIV id=imgsrc style="VISIBILITY: hidden"> <IMG alt="In the early morning he departed." src="http://www.lanrentuku.com/down/js/images/12499727220.jpg"> <IMG alt="Believing she had dreamed of the roar of his bike," src="http://www.lanrentuku.com/down/js/images/12499727221.jpg"> <IMG alt="she woke up to the sunshine in her eyelids." src="http://www.lanrentuku.com/down/js/images/12499727222.jpg"> </DIV> </BODY></HTML>
以上所述是小編給大家介紹的原生JS實(shí)現(xiàn)圖片翻書(shū)效果,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- turn.js異步加載實(shí)現(xiàn)翻書(shū)效果
- 基于JS實(shí)現(xiàn)翻書(shū)效果的頁(yè)面切換樣式
- 基于Turn.js 實(shí)現(xiàn)翻書(shū)效果實(shí)例解析
- 移動(dòng)端H5開(kāi)發(fā) Turn.js實(shí)現(xiàn)很棒的翻書(shū)效果
- 基于javascript html5實(shí)現(xiàn)3D翻書(shū)特效
- js圖片翻書(shū)效果代碼分享
- JS實(shí)現(xiàn)圖片翻書(shū)效果示例代碼
- JQuery Dialog(JS 模態(tài)窗口,可拖拽的DIV)
- js實(shí)現(xiàn)拖拽效果
- 原生JS實(shí)現(xiàn)翻書(shū)特效
相關(guān)文章
基于JavaScript實(shí)現(xiàn)的折半查找算法示例
這篇文章主要介紹了基于JavaScript實(shí)現(xiàn)的折半查找算法,結(jié)合實(shí)例形式分析了折半查找的原理、操作步驟及javascript實(shí)現(xiàn)折半查找的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2017-04-04原生JS實(shí)現(xiàn)自定義滾動(dòng)條效果
這篇文章主要為大家詳細(xì)介紹了原生JS實(shí)現(xiàn)自定義滾動(dòng)條效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07javascript里模擬sleep(兩種實(shí)現(xiàn)方式)
有幾種方式,但都不完美 其一:不斷循環(huán),直到達(dá)到指定時(shí)間、其二:用xhr同步請(qǐng)求后臺(tái)程序,比如傳2000過(guò)去,后臺(tái)就sleep 2秒后再返回,這種方式也有缺點(diǎn),當(dāng)N多客戶端都請(qǐng)求后臺(tái)時(shí),一直保持連接http開(kāi)銷(xiāo)很大,感興趣的朋友可以了解下啊2013-01-01淺談DOM的操作以及性能優(yōu)化問(wèn)題-重繪重排
下面小編就為大家?guī)?lái)一篇淺談DOM的操作以及性能優(yōu)化問(wèn)題-重繪重排。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01js模擬實(shí)現(xiàn)京東詳情頁(yè)圖片放大效果
這篇文章主要為大家詳細(xì)介紹了js模擬實(shí)現(xiàn)京東詳情頁(yè)圖片放大效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-11-11javascript中Array()數(shù)組函數(shù)詳解
在JavaScript中數(shù)組也是比較常用的對(duì)象之一,數(shù)組是值的有序集合,本篇文章給大家分享Javascript中Array()數(shù)組函數(shù)詳解,需要的朋友可以參考下2015-08-08