发新话题
打印

阿榕软件园类型首页的实现方法

阿榕软件园类型首页的实现方法

大家应该都去过阿榕软件园,那个首页的flash实在是漂亮,给人的耳目一新的感觉,
今天下午花了半个小时把那个效果仿制了一次,做了个赝品,大家不要笑我呀
Flash: http://tsg.myrice.com/222.swf
这个是阿榕软件园的主页,漂亮吧,如果大家不能正常显示请刷新一次就可以了
下载地址是:http://tsg.myrice.com/222.swf

TOP

Re:阿榕软件园类型首页的实现方法

前面的loading动画很普通,主要吸引我的是那只小蜻蜓,追着鼠标玩,我吧自己写的代码给大家
复制内容到剪贴板
代码:
<br>_root.onLoad=function(){<br> &nbsp; &nbsp; &nbsp;with(mov){<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;add_x=5;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;add_y=5;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;begin_x=_x=_root._xmouse;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;pre_y=begin_y=_y=_root._ymouse;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;};<br>_root.onEnterFrame=function(){<br> &nbsp; &nbsp; &nbsp;with(mov){<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _rotation=Math.atan2((_root._ymouse-_y),(_root._xmouse-_x))/(Math.PI/180);<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(_root._xmouse&gt;=_x&&_root._ymouse&lt;=_y){<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _x+=add_x;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _y-=add_y;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(_root._xmouse&lt;=_x&&_root._ymouse&lt;=_y){<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _x-=add_x;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _y-=add_y;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(_root._xmouse&lt;=_x&&_root._ymouse&gt;=_y){<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _x-=add_x;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _y+=add_y;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(_root._xmouse&gt;=_x&&_root._ymouse&gt;=_y){<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _x+=add_x;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _y+=add_y;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(_root._xmouse==_x&&_root._ymouse==_y){<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _x=_root._xmouse;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; _y=_root._ymouse;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br>};<br>


其中的mov是类似也小蜻蜓那样的MC,移动速度设置再一次移动5个象素,如果太快的话是看不到效果的
_xmouse和_ymouse是当前鼠标的位置
_x和_y是当前mov的位置
rotation实现蜻蜓的旋转

TOP

Re:阿榕软件园类型首页的实现方法

只有点那个下载地址下载之后,看到的小蜻蜓才能跟这鼠标动哦!
真好玩!
楼主!加油干!

TOP

Re:阿榕软件园类型首页的实现方法

如果大家觉得不太好的话,还可以自己加入缓冲代码,
缓冲的实现我上次已经讲过了,稍微修改一下就可以了
下面是我自己弄的那个东东,大家可以看看效果
Flash: http://tsg.myrice.com/gn.swf
下载地址:http://tsg.myrice.com/gn.swf
我是用flash MX 2004 professional写的,推荐大家用7.0的播放器观看

TOP

Re:阿榕软件园类型首页的实现方法

不能正常看的同学 刷新一下 就出来了  

不明白是怎么回事

TOP

回复:阿榕软件园类型首页的实现方法

引用:
下面引用由SummerMemory2003/10/28 19:02 发表的内容:
大家应该都去过阿榕软件园,那个首页的flash实在是漂亮,给人的耳目一新的感觉,
今天下午花了半个小时把那个效果仿制了一次,做了个赝品,大家不要笑我呀
Flash: http://tsg.myrice.com/222.swf
这个是阿榕软件园的主页,漂亮吧,如果大家不能正常显示请刷新一次就可以了
.......

复制内容到剪贴板
代码:
<br>// Action script...<br><br>// [Action in Frame 15]<br>if (Number(_framesloded) &gt;= Number(_totalframes))<br>{<br> &nbsp; &nbsp;gotoAndPlay(16);<br>}<br>else<br>{<br> &nbsp; &nbsp;stop();<br>} // end if<br><br>// [Action in Frame 31]<br>function followMe()<br>{<br> &nbsp; &nbsp;mousex = _root.catchMouse._x + 10;<br> &nbsp; &nbsp;mousey = _root.catchMouse._y + 10;<br> &nbsp; &nbsp;ringx = _root.drag_me._x;<br> &nbsp; &nbsp;ringy = _root.drag_me._y;<br> &nbsp; &nbsp;difx = mousex - ringx;<br> &nbsp; &nbsp;dify = mousey - ringy;<br> &nbsp; &nbsp;incx = difx / 40;<br> &nbsp; &nbsp;incy = dify / 120;<br> &nbsp; &nbsp;if (incx &lt; 0)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;incx = -incx;<br> &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;incy = dify / 8;<br> &nbsp; &nbsp;if (incy &lt; 0)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;incy = -incy;<br> &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;if (difx &lt; -6 && difx &lt; 6)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else if (difx &lt; 0)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;setProperty(&quot;_root.drag_me&quot;, _x, ringx - 1 - incx);<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;setProperty(&quot;_root.drag_me&quot;, _x, ringx + 1 + incx);<br> &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;if (dify &lt; -8 && dify &lt; 8)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else if (dify &lt; 0)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;setProperty(&quot;_root.drag_me&quot;, _y, ringy - 1 - incy);<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;setProperty(&quot;_root.drag_me&quot;, _y, ringy + 1 + incy);<br> &nbsp; &nbsp;} // End of the function<br>} // end if<br>function tangens(tan)<br>{<br> &nbsp; &nbsp;if (tan &lt; 1)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;if (tan &lt; 2.410000)<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (tan &lt; 5.030000)<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (tan &lt; 10.150000)<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 90;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 84.375000;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else if (tan &lt; 3.300000)<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 78.750000;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 73;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp;else if (tan &lt; 1.496000)<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (tan &lt; 1.870000)<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 67.500000;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 61.875000;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp;else if (tan &lt; 1.220000)<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 56.250000;<br> &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp;else<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 50.625000;<br> &nbsp; &nbsp; &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else if (tan &lt; 0.410000)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;if (tan &lt; 0.670000)<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (tan &lt; 0.820000)<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 45;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;else<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 39.375000;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp;else if (tan &lt; 0.534000)<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 33.750000;<br> &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp;else<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 28.125000;<br> &nbsp; &nbsp; &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else if (tan &lt; 0.198000)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;if (tan &lt; 0.300000)<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 22.500000;<br> &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp;else<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;angle = 16.875000;<br> &nbsp; &nbsp; &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else if (tan &lt; 0.098000)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;angle = 11.250000;<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;angle = 5.625000;<br> &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;angle = angle + baseangle - 180;<br> &nbsp; &nbsp;return(angle);<br>} // End of the function<br>function init(pivotx, pivoty, x, y)<br>{<br> &nbsp; &nbsp;if (x &lt; pivotx)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;if (y &lt; pivoty)<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;gegenkathete = x - pivotx;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;ankathete = pivoty - y;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;baseangle = 0;<br> &nbsp; &nbsp; &nbsp; &nbsp;}<br> &nbsp; &nbsp; &nbsp; &nbsp;else<br> &nbsp; &nbsp; &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;gegenkathete = y - pivoty;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;ankathete = x - pivotx;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;baseangle = 90;<br> &nbsp; &nbsp; &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else if (y &lt; pivoty)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;gegenkathete = pivoty - y;<br> &nbsp; &nbsp; &nbsp; &nbsp;ankathete = pivotx - x;<br> &nbsp; &nbsp; &nbsp; &nbsp;baseangle = 270;<br> &nbsp; &nbsp;}<br> &nbsp; &nbsp;else<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;gegenkathete = pivotx - x;<br> &nbsp; &nbsp; &nbsp; &nbsp;ankathete = y - pivoty;<br> &nbsp; &nbsp; &nbsp; &nbsp;baseangle = 180;<br> &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;tan = gegenkathete / ankathete;<br> &nbsp; &nbsp;return(tan);<br>} // End of the function<br>function rotateMe()<br>{<br> &nbsp; &nbsp;pivotx = _root.catchMouse._x;<br> &nbsp; &nbsp;pivoty = _root.catchMouse._y;<br> &nbsp; &nbsp;x = _root.drag_me._x;<br> &nbsp; &nbsp;y = _root.drag_me._y;<br> &nbsp; &nbsp;init(pivotx, pivoty, x, y);<br> &nbsp; &nbsp;tangens(tan);<br> &nbsp; &nbsp;setProperty(&quot;_root.drag_me&quot;, _rotation, angle);<br> &nbsp; &nbsp;setProperty(&quot;_root.drag_me&quot;, _xscale, 100);<br> &nbsp; &nbsp;setProperty(&quot;_root.drag_me&quot;, _yscale, 100);<br>} // End of the function<br>startDrag(&quot;_root.catchMouse&quot;, true);<br>var tan = 1.100000;<br><br>// [Action in Frame 32]<br>stop();<br><br>


复制内容到剪贴板
代码:
<br>// Action script...<br><br>// [onClipEvent of sprite 2 in frame 1]<br>onClipEvent (load)<br>{<br> &nbsp; &nbsp;setDest = 1;<br>}<br><br>onClipEvent (enterFrame)<br>{<br> &nbsp; &nbsp;if (setDest)<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;dest_x = random(_root.limit.xmax - _root.limit.xmin) + _root.limit.xmin;<br> &nbsp; &nbsp; &nbsp; &nbsp;dest_y = random(_root.limit.ymax - _root.limit.ymin) + _root.limit.ymin;<br> &nbsp; &nbsp; &nbsp; &nbsp;setDest = 0;<br> &nbsp; &nbsp; &nbsp; &nbsp;init = getTimer();<br> &nbsp; &nbsp;} // end if<br> &nbsp; &nbsp;distancex = dest_x - this._x;<br> &nbsp; &nbsp;distancey = dest_y - this._y;<br> &nbsp; &nbsp;xdif = distancex / 2 * Number(_root.speed);<br> &nbsp; &nbsp;ydif = distancey / 2 * Number(_root.speed);<br> &nbsp; &nbsp;this._x = this._x + xdif;<br> &nbsp; &nbsp;this._y = this._y + ydif;<br> &nbsp; &nbsp;if (getTimer() - init &lt; Number(_root.frequency) + random(_root.frequency))<br> &nbsp; &nbsp;{<br> &nbsp; &nbsp; &nbsp; &nbsp;setDest = 1;<br> &nbsp; &nbsp;} // end if<br>}<br><br>


复制内容到剪贴板
代码:
<br>// Action script...<br><br>// [onClipEvent of sprite 18 in frame 1]<br>onClipEvent (enterFrame)<br>{<br> &nbsp; &nbsp;_root.rotateMe();<br>}<br><br>// [onClipEvent of sprite 19 in frame 1]<br>onClipEvent (enterFrame)<br>{<br> &nbsp; &nbsp;_root.followMe();<br>}<br><br>

TOP

发新话题