一直被老婆抱怨不懂浪漫,老婆的生日又来了,老婆指着闺蜜空间上贴的老公做的胡萝卜心形浪漫晚餐告诉我:必须送她一份用心的礼物。我绞尽脑汁想出这么一法子,还是得用我们码农的独特方式,经过一天多的努力,终于做完了,来给大家晒一下,一共三个特效 1,六个字单列从右侧飞入;2,六个字闪烁;3,六个字连续从右侧飞入(类似电子字幕的滚动特效)下面有附件,大家轻拍。基本原理,生成一个20行20列的table,400个小格子当屏幕,按照每个字的形状生成0,1数组,如果单元格需要显示,填入心形图片,否则填充透明图片,动画的时候一帧即为1个长度为400的数据,一共5*6+120*20+210*6帧*400个0和1,: 

谁说码农不懂浪漫?js写的'老婆生日快乐'特效 


谁说码农不懂浪漫?js写的'老婆生日快乐'特效 

谁说码农不懂浪漫?js写的'老婆生日快乐'特效 

谁说码农不懂浪漫?js写的'老婆生日快乐'特效 

谁说码农不懂浪漫?js写的'老婆生日快乐'特效 
目前只在ie8下测试通过, 

 

  <title> 老婆,生日快乐! </title>&lt;meta name="Generator" content="EditPlus"&gt; 
&lt;meta name="Author" content=""&gt; 
&lt;meta name="Keywords" content=""&gt; 
&lt;meta name="Description" content=""&gt; 
&lt;!-- &lt;bgsound src="生日快乐歌.mp3" loop="-1"&gt;--&gt;<table ; 


//获取一个字的第n列的第m帧的0,1排列 
function getLeft(zi,colIndex,zhenIndex){ 
var leftArr = new Array(400); 

for(var i=0;i&lt;400;i++){ 
leftArr[i]=0; 
var shang = parseInt(i/20); 
var yu = i%20; 
if(yu==(19-zhenIndex) ){ 
leftArr[i] = zi[shang*20+colIndex]; 
}else if(yu&lt;(19-zhenIndex)){ 
if(yu&lt;(colIndex)){ 
leftArr[i] = zi[i]; 

    


nArr.push(leftArr); 


leftScroll(laoA); 
leftScroll(poA); 
leftScroll(shengA); 
leftScroll(riA); 
leftScroll(kuaiA); 
leftScroll(leA); 

for(var i=0;i&lt;20;i++){ 
for(var ii=0;ii&lt;(20-i);ii++){ 
getLeft(laoA,i,ii); 


for(var i=0;i&lt;20;i++){ 
for(var ii=0;ii&lt;(20-i);ii++){ 
getLeft(poA,i,ii); 


for(var i=0;i&lt;20;i++){ 
for(var ii=0;ii&lt;(20-i);ii++){ 
getLeft(shengA,i,ii); 


for(var i=0;i&lt;20;i++){ 
for(var ii=0;ii&lt;(20-i);ii++){ 
getLeft(riA,i,ii); 


for(var i=0;i&lt;20;i++){ 
for(var ii=0;ii&lt;(20-i);ii++){ 
getLeft(kuaiA,i,ii); 


for(var i=0;i&lt;20;i++){ 
for(var ii=0;ii&lt;(20-i);ii++){ 
getLeft(leA,i,ii); 



loop(); 


  &lt;/script&gt; 

 

相关文章:

  • 2021-12-15
  • 2018-03-30
  • 2021-10-07
  • 2021-12-08
  • 2021-11-02
  • 2021-11-02
  • 2021-12-19
猜你喜欢
  • 2021-12-23
  • 2021-11-12
  • 2021-12-23
  • 2021-11-28
  • 2021-11-02
  • 2021-11-01
  • 2021-09-17
相关资源
相似解决方案