解析:
8月13日 17:44 添加个性时钟的代码
<DIV align=center>
<DIV align=center><STRONG><FONT size=3><FONT class="page_speeder_1934830082">请注意准确对时</FONT></FONT></STRONG></DIV>
<DIV align=center><EMBED src=dl.souxp/fzjzykj/previews/clocks/clock83.swf width=180 height=180 type=application/x-shockwave-flash>
其中,dl.souxp/fzjzykj/previews/clocks/clock83.swf是时钟的网址,可以自己修改。
时钟样式可以到fengzhuju/page-00s/wzgg/clocks里挑。
挑好了复制地址(都是.swf结尾的)替代上面的“FLASH地址就行”。
具体步骤是:1把代码放在以建的模块后边
复制代码---控制面板-----新增空白面板----钩选源代码(出现钩号,同时文档里出现DIV的字样)----粘贴代码----钩选源代码(钩号消失)-----输入几个字或放张图片----保存新增面板----定制个人首页----选取新增个人面板----保存设置
我的BLOG:blog.sina/m/qingka
字跟随鼠标走的代码
<style type=text/css>
.spanstyle {
COLOR: #ff00ffFONT-FAMILY: 宋体FONT-SIZE: 10ptPOSITION: absoluteTOP: -50pxVISIBILITY: visible
}
</style>
<script>
var x,y
var step=18
var flag=0
var message="~欢~迎~您~光~临~"
message=message.split("")
var xpos=new Array()
for (i=0i<=message.length-1i++) {
xpos[i]=-50
}
var ypos=new Array()
for (i=0i<=message.length-1i++) {
ypos[i]=-200
}
function handlerMM(e){
x = (document.layers) ? e.pageX : document.body.scrollLeft+event.clientX
y = (document.layers) ? e.pageY : document.body.scrollTop+event.clientY
flag=1
}
function _helpor_() {
if (flag==1 &&document.all) {
for (i=message.length-1i>=1i--) {
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y
for (i=0i<message.length-1i++) {
var thisspan = eval("span"+(i)+".style")
thisspan.posLeft=xpos[i]
thisspan.posTop=ypos[i]
}
}
else if (flag==1 &&document.layers) {
for (i=message.length-1i>=1i--) {
xpos[i]=xpos[i-1]+step
ypos[i]=ypos[i-1]
}
xpos[0]=x+step
ypos[0]=y
for (i=0i<message.length-1i++) {
var thisspan = eval("document.span"+i)
thisspan.left=xpos[i]
thisspan.top=ypos[i]
}
}
var timer=setTimeout("_helpor_()",30)
}
for (i=0i<=message.length-1i++) {
document.write("<span id='span"+i+"' class='spanstyle'>")
document.write(message[i])
document.write("</span>")
}
if (document.layers){
document.captureEvents(Event.MOUSEMOVE)
}
document.onmousemove = handlerMM
_helpor_()
-->
</script>
代码说明:
COLOR:后面是颜色代码是可以自定义的,只要换一下颜色代码就行。字体也是可以自定义的,你直接把我写“宋体”的地方换成你喜欢的字体就可以。~欢~迎~您~光~临~就是你要写在鼠标后面的话了。
特别提醒: 百度博客系统会自动屏蔽掉命令<script>,只要你在做特效时,另外在红色的<script>后面多加上一个<script>就可以啦,其它命令代码如法炮制,这个是CSS代码所以要放在有内容的面板里!
几个地址:
imgfree.21/free/flash/78.swf跟随鼠标旋转的数字时钟
imgfree.21/free/flash/80.swf跟随鼠标的“欢迎下载”及七彩星
imgfree.21/free/flash/87.swf跟随鼠标移动的黄色小球
imgfree.21/free/flash/115.swf跟随鼠标游动的浅蓝色的鱼
我的BLOG:blog.sina/m/qing
该回答在8月13日 17:49由回答者修改过
这个简单,源文件发到你邮箱里了。请查收。可以新建一个as3的文档,在空白帧上按F9,直接写代码如下:
import flash.text.TextField
var id:Number
var yerStr:String
var monStr:String
var dayStr:String
var horStr:String
var minStr:String
var secStr:String
var weekArray:Array = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]
var my_txt:TextField = new TextField()
my_txt.width = 300
addChild(my_txt)
var my_fmt:TextFormat = new TextFormat()
my_fmt.color = 0x000000
my_fmt.size = 20
refreshTime(my_txt)
id = setInterval(refreshTime, 1000, my_txt)
function refreshTime(obj){
var myDate:Date = new Date()
yerStr = myDate.getFullYear()+"年"
monStr = myDate.getMonth()+1
if (Number(monStr)<10){
monStr = "0"+monStr+"月"
}else{
monStr = monStr+"月"
}
if (myDate.getDate()<10){
dayStr = "0"+myDate.getDate()+"日"
}else{
dayStr = myDate.getDate()+"日"
}
if (myDate.getHours()<10){
horStr = "0"+myDate.getHours()+":"
}else{
horStr = myDate.getHours()+":"
}
if (myDate.getMinutes()<10){
minStr = "0"+myDate.getMinutes()+":"
}else{
minStr = myDate.getMinutes()+":"
}
if (myDate.getSeconds()<10){
secStr = "0"+myDate.getSeconds()
}else{
secStr = ""+myDate.getSeconds()
}
obj.text = yerStr+monStr+dayStr+weekArray[myDate.getDay()]+" "+horStr+minStr+secStr
obj.setTextFormat(my_fmt)
}
需要as2版本的,可以帮你改成as2的。
解决思路要想制作双历指针式钟表,就要先制作电子表,利用系统函数获得当前的时间和日期,利用动态文本框显示变量值。然后分析秒针、分针、和时针的旋转角度与时间的关系,通过这个数学模型,我们就能做出双历指针式钟表。
具体步骤
1、 运行Flash MX 2004,新建影片剪辑,命名为“表盘”。进入编辑区绘制一条直线,单击【窗口】|【设计面板】|【变形】命令,打开变形面板,添入旋转角度为30度,拷贝并应用变形。按照同样方法,绘制出其他分钟的刻度。如图3.3.91所示。
2、 在背景层中我们添加三个动态文本框,变量名称为:“weeks”,“days”和“timebox”。如图3.3.92所示。
3、 分别新建三个影片剪辑,命名为“时针”,“分针”,“秒针”。绘制三个指针的形状。注意指针的中心点的位置。如图3.3.93所示。
4、 导入一段指针移动的模拟音乐。在声音文件的连接属性中选择“为动作脚本导出”,命名为“sound”。
5、 新建一个影片剪辑,命名为“音乐”。在第1帧添加as:stop()第2帧插入空白关键帧,添加as:
ss = new Sound()
ss.attachSound("sound")
ss.start()
ss.onSoundComplete = function() {
ss.start()
} //调用库中的声音文件sound
6、返回到场景1,把“表盘”影片剪辑拖放到舞台中,利用对齐面板使之处与舞台中央位置。
7、新建一个图层,绘制一个中心点。同样利用对齐面板使之处与中央位置。
8、新建三个图层,分别放置“时针”,“分针”,“秒针”影片剪辑。注意,影片剪辑的中心点要与步骤6绘制的中心点重合。如图3.3.94所示。
9、 新建一个音乐层,把“音乐”影片剪辑放置在场景的任何位置。在下面的属性面板中,命名为“777”。
10、 分别选择“时针”,“分针”,“秒针”三个影片剪辑,在下面的属性面板中分别命名为“hourpoints”,“minutepoints”和“secondpoints”。
11、 好了,准备工作已经完成了。下面我们添加AS。
12、 选中“表盘”影片剪辑,添加as语句:
onClipEvent (load) {
weekArray = new Array(’星期日’, ’星期一’, ’星期二’, ’星期三’, ’星期四’, ’星期五’, ’星期六’)//建立一个数组,共七个元素
timedate = new Date()//建立一个新的时间对象
}
onClipEvent (enterFrame) {
week = timedate.getDay()//返加0~6,0时取“星期日”;1时取“星期一”…….
weekday = weekArray[week]//从数组中读取中文显示,参看上一句的解释
day = timedate.getDate()//当前的日期,返回值为1~31
hour = timedate.getHours()//当前的时,返回0~23
minute = timedate.getMinutes()当前的分,返回0~59
second = timedate.getSeconds()当前的秒,返回0~59
if (hour<10) {
hour = "0" + hour//如果时小于10,前面显示加“0”
}
if (minute<10) {
minute = "0" + minute//同上
}
if (second<10) {
second = "0" + second//同上
}
timebox = hour+" : "+minute+" : "+second//显示在动态文本框中
weeks = weekday//同上一句
days = day//同上一句
delete timedate//删除时间对象,目的是实时显示时间
timedate = new Date()//新建时间对象
}
13、 选择“时针”影片剪辑,添加as语句:
onClipEvent (enterFrame) {
hourangle = _root.clock.hour*30+_root.clock.minute/2
//把钟表符号中的时针对应的角度值赋值给变量“hourangle”
setProperty ("_root.hourpoints", _rotation, hourangle)
}//设置分针的旋转角度
14、 选择“分针”影片剪辑,添加as语句:
onClipEvent (enterFrame) {
minuteangle = _root.clock.minute*6
//把钟表符号中的分针对应的角度值赋值给变量“minuteangle”
setProperty ("_root.minutepoints", _rotation, minuteangle)
}//设置分针的旋转角度
15、 选择“秒针”影片剪辑,添加as语句:
onClipEvent (enterFrame) {
secondsangle = _root.clock.second*6
//把钟表符号中的秒针对应的角度值赋值给变量“secondsangle”
setProperty ("_root.secondpoints", _rotation, secondsangle)
}//设置秒针的旋转角度
16、测试,保存。请参看源文件“时钟”。
特别说明
要实现指针式双历钟表,要掌握的知识包括:FLASH的日期型函数和变量的使用,文本框的设置,时间显示的调整,数组的简单应用,以及如何实时的、动态的显示时间;最主要的是利用指针的角度与当前时间的函数关系,才能使时钟准确的指示时间。从中可以看出,如果推理不出这个函数关系,就做不成。所以我们应该多学习一下,多练练自己的逻辑思维能力
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)