注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

浩瀚星云

上善若水 厚德载物<学习版>

 
 
 

日志

 
 

类似于Flash制作的一个图片展示效果  

2008-06-06 20:28:10|  分类: ASP(过时) |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

<html>

<head>

<title>网页特效代码|JsCode.CN|---类似于Flash制作的一个图片展示效果</title>


<meta http-equiv="imagetoolbar" content="no">

<style type="text/css">

 body {cursor:crosshair;margin:0; padding:0; position:absolute; overflow:hidden; background:#222; left:0; top:0; width:100%; height:100%;zIndex:-2;}

</style>

<base href=http://www.jscode.cn/jscode/>

<script type="text/javascript">

window.onerror = new Function("return true");

screen.bufferDepth = 16;

document.onselectstart = function () { return false; }

 

////////////////////////////

var NX     = 3;

var NY     = 3;

var SP     = 20;

var DELAY  = 96;

////////////////////////////

 

var object = new Array();

var nI     = 0;

var run    = false;

var xrun   = 0;

var dR     = 1;

var iW     = 0;

var iH     = 0;

var oH     = 0;

var oW     = 0;

 

function CObj(N,y,x){

 

 this.obj = document.createElement("span");

 this.obj.onclick = new Function("object["+N+"].GE1()");

 this.obj.onmousedown = new Function("return false;");

 this.obj.style.cursor = "pointer";

 this.obj.style.position = "absolute";

 this.img = document.createElement("img");

 this.img.style.position = "absolute";

 this.img.src = IMGSRC[N%nI].src;

 this.obj.appendChild(this.img);

 IMGBOX.appendChild(this.obj);

 

 this.object = new Array();

 this.x      = x;

 this.y      = y;

 this.N      = N;

 this.W      = 0;

 this.H      = 0;

 this.L      = 0;

 this.T      = 0;

 

 function CImg(Parent,y,x){

  this.Parent = Parent;

 

  this.obj = document.createElement("span");

  this.obj.style.position="absolute";

  this.obj.style.overflow="hidden";

  this.obj.style.cursor = "pointer";

  this.img = document.createElement("img");

  this.img.style.position = "absolute";

  this.img.src = IMGSRC[N%nI].src;

  this.obj.appendChild(this.img);

  this.Parent.obj.appendChild(this.obj);

 

  this.N   = Parent.N;

  this.x   = x;

  this.y   = y;

  this.W   = 0;

  this.H   = 0;

  this.L   = 0;

  this.T   = 0;

  this.dx  = 0;

  this.dy  = 0;

  this.px  = 0;

  this.py  = 0;

  this.dw  = 0;

  this.dh  = 0;

  this.pw  = 0;

  this.ph  = 0;

  this.ipx = 0;

  this.ipy = 0;

  this.idx = 0;

  this.idy = 0;

 

  this.GE2 = function (){

   with(this){

    px -= dx * dR;

    py -= dy * dR;

    pw += dw * dR;

    ph += dh * dR;

    ipx -= idx * dR;

    ipy -= idy * dR;

 

    with(obj.style){

     left   = Math.round(px);

     top    = Math.round(py);

     width  = Math.round(pw)+1;

     height = Math.round(ph)+1;

     if(dR==-1)if(pw<=W+1)obj.style.visibility="hidden";

    }

 

    with(img.style){

     left   = Math.round(ipx-oW);

     top    = Math.round(ipy-oH);

    }

 

    if(++xrun>=NX*NY*SP){

     xrun=0;

     run=false;

     if(dR==-1)Parent.obj.style.zIndex = 0;

     dR = -dR;

    }

   }

  }

 

  this.GE1 = function (N1,N2){

   with(this){

    if(dR==1){

     px  = L;

     py  = T;

     dx  = ((Parent.L + L) - (x * Parent.W)) / SP;

     dy  = ((Parent.T + T) - (y * Parent.H)) / SP;

     pw  = W;

     ph  = H;

     dw  = (Parent.W - W) / SP;

     dh  = (Parent.H - H) / SP;

     ipx = -L;

     ipy = -T;

     idx = ((x * Parent.W) - L) / SP;

     idy = ((y * Parent.H) - T) / SP;

    }

    obj.style.visibility="visible";

    if(img.height>document.body.offsetHeight)oH=(img.height-document.body.offsetHeight)/2; else oH = 0;

    if(img.width>document.body.offsetWidth/2)oW=(img.width-(document.body.offsetWidth/2))/2; else oW = 0;

    for(i=0;i<SP;i++) setTimeout("object["+N1+"].object["+N2+"].GE2()",16*i);

   }

  }

 

  this.DOOT = function (){

   with(this){

    W =  Parent.W  / NX;

    H =  Parent.H / NY;

    L =  x * W;

    T =  y * H;

   }

  }

 }

 

 var  k = 0;

 for(var i=0;i<NY;i++)

  for(var j=0;j<NX;j++)

   this.object[k++] = new CImg(this,i,j);

 

 this.GE1  = function (){

  with(this){

   if(!run){

    TXTBOX.innerHTML = "<div style='margin:2%'>"+TXTSRC[N%nI].innerHTML+"</div>";

    run = true;

    obj.style.zIndex = 1;

    for(var i=0;i<NX*NY;i++) setTimeout("object["+N+"].object["+i+"].GE1("+N+","+i+")",i*DELAY);

   }

  }

 }

 

 this.DOOT = function (){

  with(this){

   if(img.width<iW)iW=img.width;

   if(img.height<iH)iH=img.height;

   with(obj.style){

    W = width  = iW  / NX;

    H = height = iH / NY;

    L = left   = x * W;

    T = top    = y * H;

   }

   with(img.style){

    width  = W;

    height = H;

   }

   for(var i in object) object[i].DOOT();

  }

 }

}

 

 

onload = function() {

 IMGSRC = document.getElementById("imgsrc").getElementsByTagName("img");

 TXTSRC = document.getElementById("txtsrc").getElementsByTagName("div");

 IMGBOX = document.getElementById("imgbox");

 TXTBOX = document.getElementById("txtbox");

 CENTER = document.getElementById("center");

 iH = document.body.offsetHeight;

 iW = document.body.offsetWidth/2;

 nI = IMGSRC.length;

 var k = 0;

 for(var i=0;i<NY;i++){

  for(var j=0;j<NX;j++){

   object[k] = new CObj(k,i,j);

   object[k++].DOOT();

  }

 }

 IMGBOX.style.width  = iW;

 IMGBOX.style.height = iH;

 TXTBOX.style.width  = iW;

 TXTBOX.style.height = iH;

 TXTBOX.style.left   = iW;

 TXTBOX.style.visibility="visible";

 CENTER.style.left   = -iW;

 CENTER.style.top    = -iH/2;

}

//-->

</script>

</head>

 

<body>

<div style="position:absolute;left:50%;top:50%;"><div id="center" style="position:absolute;">

 

 <div id="imgbox" style="position:absolute;left:0;top:0;overflow:hidden;"></div>

 <div id="txtbox" style="position:absolute;visibility:hidden;overflow:hidden;background:#333;color:#FFF;font-family:verdana;font-size:0.8em;">

  <div style="margin:2%">

  <h2>IMGBOX</h2>Click the thumbnails on the left for a larger image. The description connected to the clicked image is displayed here.<br>

  <br>Note: for performance reasons, images are not resized and must be all of the same size.

  </div>

 </div>

 

 

</div></div>

 

<div id="imgsrc" style="visibility:hidden">

 <img src="/jscode/images/20065115756894.jpg">

 <img src="/jscode/images/20065115757878.jpg">

 <img src="/jscode/images/2006511581166.jpg">

 <img src="/jscode/images/2006511581185.jpg">

 <img src="/jscode/images/2006511581187.jpg">

 <img src="/jscode/images/2006511581588.jpg">

 <img src="/jscode/images/2006511581828.jpg">

 <img src="/jscode/images/2006511581951.jpg">

 <img src="/jscode/images/2006511581821.jpg">

</div>

 

<div id="txtsrc" style="visibility:hidden">

 <div>

  <h2>the river</h2><br>Awaken from my nap by the river

 </div>

 <div>

  <h2>transparency</h2><br>Its transparency was hypnotizing.

 </div>

 <div>

  <h2>cold</h2><br>Currents of cold water played with light.

 </div>

 <div>

  <h2>sank in</h2><br>I threw a few nuts into the river. They floated for a while, then sank in.

 </div>

 <div>

  <h2>masked</h2><br>A wide stepping stone masked the water's depth.

 </div>

 <div>

  <h2>a glimpse</h2><br>Later on, I had a glimpse of the river's bed.

 </div>

 <div>

  <h2>forgotten</h2><br>The wheelchair made a noise. Again, I had forgotten about my legs.

 </div>

 <div>

  <h2>floated</h2><br>Still, I floated in oblivion of things too real.

 </div>

 <div>

  <h2>for me</h2><br>I stared fixedly at the water's open arms. The stream was singing for me.

 </div>

</div>

 

<!-- crossbrowser images_loading_bar - Gerard Ferrandez - www.dhteumeuleu.com - Feb 2005 -->

<span id=LB0 style="position:absolute;left:50%;top:50%;"><span style="position:absolute;font-family:arial;font-size:10px;color:#FFFFFF;left:-50;top:-18">Loading...</span>

<span style="position:absolute;left:-50;top:-5;font-size:1px;width:100;height:10px;background:#333"><span id=LB1 style="position:absolute;left:0;top:0;font-size:1px;width:0;height:10px;background:#FFFFFF"></span></span></span>

<script>m00=document.getElementById("imgsrc").getElementsByTagName("img");m01=m00.length;function images_loading_bar(){m02=0;for(i=0;i<m01;i++)m02+=(m00[i].complete)?1:0;document.getElementById("LB1").style.width=Math.round(m02/m01*100);if(m02==m01)setTimeout("document.getElementById('LB0').style.display='none'",128); else setTimeout("images_loading_bar()", 64);};images_loading_bar();</script>

<!-- end of images_loading_bar code -->

 

</body>

</html>

  评论这张
 
阅读(63)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017