国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS實現(xiàn)文字掉落效果的方法

2019-11-20 12:32:26
字體:
供稿:網(wǎng)友

本文實例講述了JS實現(xiàn)文字掉落效果的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru"><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><script src="jquery-1.6.2.min.js" type="text/javascript"></script><style type="text/css">.canvas{width:500px;height:500px;position:relative;}</style></head><body><div><input type="button" onclick="javascript:falling.init();" value="GO" /></div><div class="canvas" id="canvas"></div><script type="text/javascript">/**墜落效果*/function Falling(){ this.dict=["abcd","2222","sign","next","container","content","last","break","less","than","that","absolute","relative","my","index","html","java","c#","web","javascript","php","include","shit","bull","big","smart","call","apply","callee","caller","function"]; this.canvas=$("#canvas"); this.step=15; this.freq=10; this.height=500; this.width=500; this.si=null;}Falling.prototype={ fallingAction:function(dom){  var self=this;  var freqs=[10,15,20];//每次下落的距離  var disS=[];//記錄所有dom的當前距離  var disPerFreqS=[];//每個dom的  var targetDis=500;  var domCssTopS=[];//所有dom的top屬性  var successDom=[];//記錄哪些dom已經(jīng)結(jié)束運動  var successCount=0;//有多少個dom已經(jīng)結(jié)束  var total=dom.length;  var freqMarkLength=freqs.length;  for(var i=0,j=dom.length;i<j;i++){   domCssTopS[i]=dom[i].position().top;   disS[i]=0;   disPerFreqS[i]=freqs[parseInt(Math.random()*freqMarkLength)];  }  self.si=setInterval(function(){   if(successCount>=total){    clearInterval(self.si);   }   for(var i=0,j=dom.length;i<j;i++){    if(typeof(successDom[i])!="undefined" && successDom[i]=="ok"){     continue;    }    disS[i] += disPerFreqS[i];    if(disS[i] >= targetDis){     dom[i].css("top", targetDis+domCssTopS[i]);     successDom[i]="ok";     successCount++;;    }else{     dom[i].css("top", disS[i]+domCssTopS[i]);    }   }  },self.freq); }, init:function(){  var self=this;  self.canvas.html('');  var dom=[];  var l=0;  var t=0;  var tempDom=$("<div style='position;absolute;left:-100000;visibility:hidden'></div>").appendTo($("body"));  for(var i=0,j=self.dict.length;i<j;i++){   dom[i]=$("<span style='position:absolute'>"+self.dict[i]+"</span>").appendTo(tempDom);   var domWidth=dom[i].width();   var domHeight=dom[i].height();   if(t<self.height){    if(l<self.width){     if(domWidth+l<=self.width){      dom[i].css({"top":t,"left":l});      self.canvas.append(dom[i]);      l += dom[i].width();     }else{      if(domHeight+t<=self.height){       t=t+domHeight;       dom[i].css({"top":t,"left":0});       self.canvas.append(dom[i]);       l = dom[i].width();      }else{       break;//到極限了      }     }    }else{      if(domHeight+t<=self.height){       t=t+domHeight;       l=0;       dom[i].css({"top":t,"left":l});       self.canvas.append(dom[i]);      }else{       break;//到極限了      }    }   }//else極限  }  /*  for(var i=0,l=self.dict.length;i<l;i++){   self.fallingAction(dom[i]);  }  */  self.fallingAction(dom); }}var falling=new Falling();falling.init();</script></body></html>

希望本文所述對大家的javascript程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 襄樊市| 广河县| 兴安县| 蒙山县| 南木林县| 北流市| 上蔡县| 红河县| 吕梁市| 佛山市| 柯坪县| 兴安盟| 清新县| 吉安市| 安吉县| 霍邱县| 富锦市| 萨迦县| 九江县| 文化| 广东省| 花莲县| 竹山县| 达日县| 灵丘县| 垦利县| 双桥区| 承德市| 双鸭山市| 理塘县| 陆河县| 青神县| 元阳县| 景泰县| 阜新市| 故城县| 海门市| 常德市| 卓资县| 赞皇县| 东光县|