凹丫丫网络社区's Archiver

Amm 发表于 2008-5-16 12:59

非常酷!3D漂浮图像

<P>&lt;xml:namespace ns="urn:schemas-microsoft-com:vml" prefix="v"/&gt;<BR>&lt;style&gt;<BR>v\:* { behavior: url(#default#VML); }<BR>&lt;/style&gt;</P>
<P>把如下代码复制到&lt;body&gt;与&lt;/body&gt;之间</P>
<P>&lt;SCRIPT&gt;<BR>// 3D-Slideshow<BR>// more javascript from <A href="http://www.smallrain.net">http://www.smallrain.net</A><BR>var slideurl=new Array()<BR>slideurl[0]="pic/blender.png"<BR>slideurl[1]="pic/aim.png"<BR>slideurl[2]="pic/babelfish.png"</P>
<P>// add a corresponding link for each image<BR>// if you don't wont to link an image, enter "#"<BR>var slidelink=new Array()<BR>slidelink[0]="<A href="http://www.butong.net">http://www.butong.net</A>"<BR>slidelink[1]="<A href="http://bz.butong.net">http://bz.butong.net</A>"<BR>slidelink[2]="<A href="http://www.butong.net/it/index.htm">http://www.butong.net/it/index.htm</A>"</P>
<P>// add a corresponding target for each link<BR>// acceptable values "_blank" or "_top" or "_parent" or "_self"<BR>var slidetarget=new Array()<BR>slidetarget[0]="_blank"<BR>slidetarget[1]="_self"<BR>slidetarget[2]="_top"</P>
<P>// set the width of the 3D-border (pixels)<BR>var backdepth=6</P>
<P>// set thecolorof the 3D-border (HTML-values required)<BR>var fillcolor="#666666"</P>
<P>// set the standstill (seconds) for the images (required for Netscape Navigator)<BR>var standstill=3</P>
<P>// set the form of the imageframe<BR>// acceptable values are "oval" or "rect"<BR>var imageform="oval"</P>
<P>// do not edit below this line<BR>var slidewidth=1<BR>var slideheight=1</P>
<P>var ns6=document.getElementById&amp;&amp;!document.all?1:0 <BR>var opera=navigator.userAgent.match(/Opera/) <BR>var ie5=document.getElementById&amp;&amp;document.all&amp;&amp;!opera?1:0 </P>
<P>standstill*=1000<BR>var floatingspeed=1<BR>var tempo=20<BR>var numberofimages=slideurl.length-1<BR>var stepx=new Array()<BR>var stepy=new Array()<BR>for (i=0;i&lt;=numberofimages;i++) {<BR>&nbsp;stepx[i]=randommakerNS(floatingspeed)<BR>&nbsp;stepy[i]=randommakerNS(floatingspeed)<BR>}<BR>var imgwidth=new Array()<BR>var imgheight=new Array()<BR>for (i=0;i&lt;=numberofimages;i++) {<BR>&nbsp;imgwidth[i]=10<BR>&nbsp;imgheight[i]=10<BR>}<BR>var x,y<BR>var marginbottom<BR>var marginleft=0<BR>var margintop=0<BR>var marginright<BR>var timer<BR>var i_fadestrength=new Array()<BR>var i_fadestep=new Array()<BR>var i_fadenow=new Array()<BR>var i_fadenowmax=new Array()<BR>for (i=0;i&lt;=slideurl.length;i++) {<BR>&nbsp;i_fadenowmax[i]=2<BR>&nbsp;i_fadestrength[i]=randommakerNS(99)&nbsp;<BR>&nbsp;i_fadestep[i]=1<BR>&nbsp;i_fadenow[i]=0<BR>}</P>
<P>var spancontent=new Array()<BR>var i_spancontent=0<BR>var imgpreload=new Array()<BR>for (i=0;i&lt;=slideurl.length;i++) {<BR>&nbsp;imgpreload[i]=new Image()<BR>&nbsp;imgpreload[i].src=slideurl[i]<BR>}<BR>for (i=0;i&lt;=numberofimages;i++) {<BR>&nbsp;spancontent[i]="&lt;a href='"+slidelink[i]+"' target='"+slidetarget[i]+"'&gt;&lt;img src='"+slideurl[i]+"' border='0'&gt;&lt;/a&gt;"<BR>}</P>
<P>var i_angle1=0<BR>var i_size=1<BR>var i_pic=0<BR>var posleft=0<BR>var postop=0<BR>var x_extrusionangle=0<BR>var y_extrusionangle=0<BR>var x_rotationcenter=0<BR>var y_rotationcenter=0<BR>var pagewidth<BR>var pageheight</P>
<P>function initNS() {<BR>&nbsp;&nbsp;&nbsp; marginbottom=window.innerHeight-11<BR>&nbsp;&nbsp;&nbsp; marginright=window.innerWidth-11&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;var thisspan=document.getElementById('span0')<BR>&nbsp;thisspan.innerHTML=spancontent[0]<BR>&nbsp;var thisspan=document.getElementById('span0')<BR>&nbsp;imgwidth[0]=parseInt(thisspan.offsetWidth)<BR>&nbsp;imgheight[0]=parseInt(thisspan.offsetHeight)<BR>&nbsp;var maxleftstart=marginright-imgwidth[0]<BR>&nbsp;var maxtopstart=marginbottom-imgheight[0]<BR>&nbsp;var thisspan=document.getElementById('span0').style<BR>&nbsp;&nbsp;&nbsp; thisspan.left=parseInt(thisspan.left)+randommakerNS(maxleftstart)<BR>&nbsp;thisspan.top=parseInt(thisspan.top)+randommakerNS(maxtopstart) <BR>&nbsp;thisspan.visibility="visible" <BR>&nbsp;&nbsp;&nbsp; checkmovementNS()<BR>}</P>
<P>function randommakerNS(range) {&nbsp;&nbsp;<BR>&nbsp;rand=Math.floor(range*Math.random())<BR>&nbsp;if (rand==0) {rand=Math.ceil(range/2)}<BR>&nbsp;&nbsp;&nbsp; return rand<BR>}</P>
<P>function checkmovementNS() {<BR>&nbsp;checkpositionNS()<BR>&nbsp;movepicturesNS()<BR>&nbsp;&nbsp;&nbsp; timer=setTimeout("checkmovementNS()",tempo)<BR>}</P>
<P>function movepicturesNS() {<BR>&nbsp;&nbsp;&nbsp; var thisspan=document.getElementById('span0').style<BR>&nbsp;&nbsp;&nbsp; thisspan.left=parseInt(thisspan.left)+stepx[0]<BR>&nbsp;thisspan.top=parseInt(thisspan.top)+stepy[0]&nbsp;<BR>&nbsp;i_fadenow[0]++<BR>&nbsp;if (i_fadenow[0]&gt;=i_fadenowmax[0]) {<BR>&nbsp;&nbsp;i_fadenow[0]=0<BR>&nbsp;&nbsp;if (i_fadestrength[0]&gt;=100) {i_fadestep[0]=i_fadestep[0]*-1}<BR>&nbsp;&nbsp;else if (i_fadestrength[0]&lt;=0) {<BR>&nbsp;&nbsp;&nbsp;i_fadestep[0]=i_fadestep[0]*-1<BR>&nbsp;&nbsp;&nbsp;i_spancontent++<BR>&nbsp;&nbsp;&nbsp;if (i_spancontent&gt;=spancontent.length) {i_spancontent=0}<BR>&nbsp;&nbsp;&nbsp;document.getElementById('span0').innerHTML=spancontent[i_spancontent]<BR>&nbsp;&nbsp;}<BR>&nbsp;}&nbsp;<BR>&nbsp;i_fadestrength[0]+=i_fadestep[0]<BR>&nbsp;document.getElementById('span0').style.MozOpacity=Math.round(i_fadestrength[0])/100<BR>}</P>
<P>function checkpositionNS() {<BR>&nbsp;imgwidth[0]=parseInt(document.getElementById('span0').offsetWidth)<BR>&nbsp;imgheight[0]=parseInt(document.getElementById('span0').offsetHeight)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;var thisspan=document.getElementById('span0').style<BR>&nbsp;var leftx=parseInt(thisspan.left)<BR>&nbsp;var topy=parseInt(thisspan.top)<BR>&nbsp;if (leftx&gt;marginright-imgwidth[0]-floatingspeed) {<BR>&nbsp;&nbsp;thisspan.left=leftx-Math.abs(stepx[0]+1)<BR>&nbsp;&nbsp;stepx[0]=randommakerNS(floatingspeed)*-1&nbsp;<BR>&nbsp;}<BR>&nbsp;if (leftx&lt;marginleft) {<BR>&nbsp;&nbsp;thisspan.left=leftx+Math.abs(stepx[0])<BR>&nbsp;&nbsp;stepx[0]=randommakerNS(floatingspeed)&nbsp;&nbsp;&nbsp;<BR>&nbsp;}&nbsp;<BR>&nbsp;if (topy&gt;marginbottom-imgheight[0]-floatingspeed) {<BR>&nbsp;&nbsp;thisspan.top=topy-Math.abs(stepy[0])<BR>&nbsp;&nbsp;stepy[0]=randommakerNS(floatingspeed)*-1<BR>&nbsp;}<BR>&nbsp;if (topy&lt;margintop) {<BR>&nbsp;&nbsp;thisspan.top=topy+Math.abs(stepy[0])<BR>&nbsp;&nbsp;stepy[0]=randommakerNS(floatingspeed)<BR>&nbsp;}<BR>}</P>
<P>function initIE() {<BR>&nbsp;var i_preload=0<BR>&nbsp;for (i=0;i&lt;=slideurl.length-1;i++) {<BR>&nbsp;&nbsp;var imgref=eval("document.n"+i)<BR>&nbsp;&nbsp;if (imgref.complete) {i_preload++}<BR>&nbsp;}<BR>&nbsp;if (i_preload&gt;=slideurl.length-1) {<BR>&nbsp;&nbsp;slidewidth=document.getElementById('spn1').offsetWidth<BR>&nbsp;&nbsp;slideheight=document.getElementById('spn1').offsetHeight<BR>&nbsp;&nbsp;pagewidth=document.body.clientWidth<BR>&nbsp;&nbsp;pageheight=document.body.clientHeight<BR>&nbsp;&nbsp;document.getElementById('rectid').style.width=slidewidth<BR>&nbsp;&nbsp;document.getElementById('rectid').style.height=slideheight<BR>&nbsp;&nbsp;posleft=(pagewidth-slidewidth)/2<BR>&nbsp;&nbsp;postop=(pageheight-slideheight)/2<BR>&nbsp;&nbsp;x_rotationcenter=(posleft/slidewidth)/2<BR>&nbsp;&nbsp;y_rotationcenter=(postop/slideheight)/2<BR>&nbsp;&nbsp;var rotationcenter=0+","+y_rotationcenter+","+x_rotationcenter<BR>&nbsp;&nbsp;document.getElementById('rectid').style.left=posleft<BR>&nbsp;&nbsp;document.getElementById('rectid').style.top=postop<BR>&nbsp;&nbsp;document.getElementById('extrusionid').rotationcenter=rotationcenter<BR>&nbsp;&nbsp;rotateIE()<BR>&nbsp;}<BR>&nbsp;else {<BR>&nbsp;&nbsp;var timer=setTimeout("initIE()",200)<BR>&nbsp;}<BR>}</P>
<P>function rotateIE() {<BR>&nbsp;i_angle1+=1<BR>&nbsp;if (i_angle1&gt;=360) {<BR>&nbsp;&nbsp;i_angle1=0<BR>&nbsp;}<BR>&nbsp;if (i_angle1==127) {<BR>&nbsp;&nbsp;i_pic++<BR>&nbsp;&nbsp;if (i_pic&gt;=slideurl.length) {i_pic=0}<BR>&nbsp;&nbsp;document.getElementById('fillid').src=slideurl[i_pic]<BR>&nbsp;}<BR>&nbsp;document.getElementById('rectid').style.rotation=i_angle1<BR>&nbsp;document.getElementById('extrusionid').rotationangle=i_angle1+","+i_angle1<BR>&nbsp;var timer=setTimeout("rotateIE()",30)<BR>}</P>
<P>function openpageIE() {<BR>&nbsp;if (slidetarget[i_pic]=="_blank") {<BR>&nbsp;&nbsp;window.open(slidelink[i_pic])<BR>&nbsp;}<BR>&nbsp;else if (slidetarget[i_pic]=="_self") {<BR>&nbsp;&nbsp;document.location.href(slidelink[i_pic])<BR>&nbsp;}<BR>&nbsp;else if (slidetarget[i_pic]=="_top" || slidetarget[i_pic]=="_parent") {<BR>&nbsp;&nbsp;top.location.href(slidelink[i_pic])<BR>&nbsp;}<BR>}</P>
<P>if (ns6) {<BR>&nbsp;document.write("&lt;span id='span0' style='position:absolute;top:0px;left:0px;filter:alpha(opacity=0);-moz-opacity:0'&gt;&lt;/span&gt;")<BR>&nbsp;&nbsp;&nbsp; document.close()<BR>&nbsp;window.onload=initNS<BR>}<BR>if (ie5) {<BR>&nbsp;document.write('&lt;div id="preloadimages" style="position:absolute;left:0px;top:-5px;visibility:hidden"&gt;')<BR>&nbsp;for (i=0;i&lt;=slideurl.length-1;i++) {<BR>&nbsp;&nbsp;document.write('&lt;span id="spn'+i+'" style="position:absolute;width:2px;left:0px;top:0px;"&gt;')<BR>&nbsp;&nbsp;document.write('&lt;img src="'+slideurl[i]+'" name="n'+i+'"&gt;')<BR>&nbsp;&nbsp;document.write('&lt;/span&gt;')<BR>&nbsp;}<BR>&nbsp;document.write('&lt;/div&gt;')<BR>&nbsp;&nbsp; &nbsp;document.write('&lt;v:'+imageform+' id="rectid"&nbsp; style="position:absolute;top:0;left:0;width:'+slidewidth+';height:'+slideheight+'" onClick="openpageIE()"&gt;')<BR>&nbsp;&nbsp; &nbsp;document.write('&lt;v:extrusion id="extrusionid" on="true" type="perspective" color="'+fillcolor+'" rotationcenter="0,0,0" backdepth="'+backdepth+'" diffusity="2.5" metal="true"&gt;')<BR>&nbsp;&nbsp;document.write('&lt;/v:extrusion&gt;')<BR>document.write('&lt;v:fill id="fillid" opacity="100%" color="'+fillcolor+'" type="frame" src="'+slideurl[0]+'"/&gt;')<BR>&nbsp;&nbsp; document.write('&lt;/v:'+imageform+'&gt;')<BR>&nbsp;window.onload=initIE<BR>&nbsp;&nbsp; }<BR>&lt;/script&gt;</P>

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.