home *** CD-ROM | disk | FTP | other *** search
- dynamicanimAttr="dynamicanimation"
- animCancel="skipanim"
- fpanimationPrefix="fpAnim"
- animateElements=new Array()
- currentElement=0
- speed=1
- stepsZoom=8
- stepsWord=8
- stepsFly=17
- stepsSpiral=16
- stepsSpiralWord=19
- stepsElastic=32
- steps=stepsZoom
- step=0
- cornerPhase=0
- outEffect=0
- function remSuffix(str){ind=str.indexOf("FP");str=str.substring(0,ind);return str}
-
- function dynAnimOut(el){outEffect=1;dynAnimation(el);outEffect=0}
-
- function dynAnimation(obj){animateElements=new Array()
- var ms=navigator.appVersion.indexOf("MSIE")
- ie4=(ms>0) && (parseInt(navigator.appVersion.substring(ms+5,ms+6))>=4)
- if(!ie4){if((navigator.appName=="Netscape") &&
- (parseInt(navigator.appVersion.substring(0,1))>=4))
- doc_els=document.layers
- else return}
- else doc_els=document.all
- if(outEffect && !ie4)return
- if(ie4){for (index=document.all.length-1; index>=document.body.sourceIndex; index--)
- {el=document.all[index]
- if(outEffect && el !=obj)continue
- if(outEffect)animationId=el.id.substring(9,el.id.length)
- else animationId=el.id.substring(6,el.id.length)
- animation=remSuffix(animationId)
- if(null !=animation){altcnt=0
- if( animation=="dropWord" || animation=="flyTopRightWord"|| animation=="flyBottomRightWord" || animation=="waveWords"|| animation=="hopWords")
- {ih=el.innerHTML
- outString=""
- i1=0
- iend=ih.length
- while(true){i2=startWord(ih,i1)
- if(i2==-1)
- i2=iend
- outWord(ih,i1,i2,false,"",outEffect ? obj.id : el.id)
- if(i2==iend)break
- i1=i2
- i2=endWord(ih,i1)
- if(i2==-1)i2=iend
- if (animation=="waveWords")
- outWordAlt(ih,i1,i2,true,animation,altcnt)
- else outWord(ih,i1,i2,true,(outEffect ? "Out" : "")+animation,
- outEffect ? obj.id : el.id)
- if(i2==iend)break
- i1=i2
- altcnt++}
- document.all[index].innerHTML=outString
- document.all[index].style.posLeft=0
- document.all[index].setAttribute(animCancel,true)
- document.all[index].style.visibility="visible"}}}}
- i=0
- for (index=0; index< doc_els.length; index++){el=doc_els[index]
- if(0 !=el.id.indexOf(fpanimationPrefix))continue
- if (ie4){elprops=el.style
- scrollOffsetTop=document.body.scrollTop
- docHeight=document.body.offsetHeight
- docWidth=document.body.offsetWidth
- elW=100
- elH=el.offsetHeight}
- else {elprops=el
- scrollOffsetTop=window.pageYOffset
- docHeight=window.innerHeight
- docWidth=window.innerWidth
- elW=el.clip.width
- elH=el.clip.height}
- if(outEffect)animationId=el.id.substring(9,el.id.length)
- else animationId=el.id.substring(6,el.id.length)
- animation=remSuffix(animationId)
- if(outEffect && (obj !=el)){
- if(el.SRCID !=obj.id)continue}
- if (null !=animation ){
- if(ie4 && null!=el.getAttribute(animCancel,false))continue
- if(!ie4){elprops.posLeft=elprops.left
- elprops.posTop=elprops.top}
- el.startL=offsetLeft(el)
- if(animation=="flyRight" || animation=="elasticRight"){
- elprops.posLeft=-offsetLeft(el)+docWidth
- elprops.posTop=0}
- else if((animation.indexOf("waveWords") !=-1) || animation=="hopWords"){
- if(i){prevEl=animateElements[i-1]
- elprops.r=offsetLeft(el)-prevEl.startL}}
- else if(animation=="wipeLR" || animation=="wipeMID"){
- if (ie4 && elprops.position=="absolute"){el.sizeW=el.offsetWidth
- elprops.clip="rect(0 0 0 0)"}
- else if (!ie4){el.sizeW=el.clip.width
- el.clip.width=0}}else{continue}
- if(!outEffect){el.initLeft=elprops.posLeft
- el.initTop=elprops.posTop
- el.endLeft=0
- el.endTop =0
- elprops.visibility="hidden"}
- else{el.initLeft=0
- el.initTop=0
- el.endLeft=elprops.posLeft
- el.endTop=elprops.posTop
- elprops.posTop=0
- elprops.posLeft=0}
- if(!ie4){elprops.left=elprops.initLeft
- elprops.top=elprops.initTop}
- animateElements[i++]=el}}
- if(animateElements.length> 0){
- if(outEffect) window.setTimeout("animate(1);",speed,"Javascript")
- else window.setTimeout("animate(0);",speed,"Javascript")}}
- function offsetLeft(el){if(ie4){x=el.offsetLeft
- for (e=el.offsetParent; e; e=e.offsetParent)
- x+=e.offsetLeft
- return x}
- else{x=el.pageX
- return x}}
-
- function animate(animOut){el=animateElements[currentElement]
- if(animOut)animationId=el.id.substring(9,el.id.length);
- else animationId=el.id.substring(6,el.id.length);animation=remSuffix(animationId)
- if (ie4)elprops=el.style
- else elprops=el
- if(!step && !animOut)elprops.visibility="visible"
- step++
- if(animation=="spiral"){steps=stepsSpiral
- v=step/steps
- rf=1.0-v
- t=v * 2.0*Math.PI
- rx=Math.max(Math.abs(el.initLeft),200)
- ry=Math.max(Math.abs(el.initTop),200)
- elprops.posLeft=Math.ceil(-rf*Math.cos(t)*rx)
- elprops.posTop=Math.ceil(-rf*Math.sin(t)*ry)}
-
- else if(animation=="elasticRight"){steps=stepsElastic
- v=step/steps
- rf=Math.exp(-v*7)
- t=v * 1.5*Math.PI
- rx=Math.abs(el.initLeft)
- elprops.posLeft=rf*Math.cos(t)*rx
- elprops.posTop=0}
- else if(animation=="wipeLR"){steps=stepsElastic
- if(ie4 && elprops.position=="absolute")elprops.clip="rect(0 "+step/steps*100+"% 100% 0)"
- else if (!ie4){elprops.clip.right=step/steps*el.sizeW}}
- else if(animation=="wipeMID"){steps=stepsElastic
- if(ie4 && elprops.position=="absolute"){elprops.clip="rect(0 "+el.sizeW/2*(1+step/steps)+"px 100% "+el.sizeW/2*(1-step/steps)+")"}
- else if(!ie4){elprops.clip.right=el.sizeW/2*(1+step/steps)
- elprops.clip.left=el.sizeW/2*(1-step/steps)}}
- else{steps=stepsFly
- if(animation=="dropWord" || animation=="flyTopRightWord" || animation=="flyBottomRightWord")steps=stepsWord
- dl=(el.endLeft-el.initLeft) / steps
- dt=(el.endTop-el.initTop) / steps
- elprops.posLeft=elprops.posLeft+dl
- elprops.posTop=elprops.posTop+dt}
- if (step>=steps){
- if(!(animation=="wipeLR" || animation=="wipeTB" || animation=="wipeMID" || (animation=="flyCorner" && !cornerPhase))){elprops.posLeft=el.endLeft
- elprops.posTop=el.endTop}
- if(animOut){elprops.visibility="hidden"}step=0
- if(animation=="flyCorner" && !cornerPhase)cornerPhase=1
- else{cornerPhase=0
- currentElement++}}
- if(!ie4){elprops.left=elprops.posLeft
- elprops.top=elprops.posTop}
- if(currentElement< animateElements.length){
- if(animOut)window.setTimeout("animate(1);",speed,"Javascript")
- else window.setTimeout("animate(0);",speed,"Javascript")}
- else currentElement=0}
-