FLASH实现滚动条+网页书签效果
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-13
askheight为我们在第一帧已经定义也的mask的高度 从而,scrolling移动的值与txt移动的值之间的控制比例为:-(maskheight-scrolling._height)/(txt._height-maskheight),这里之所以有一个负号"-",是因为当scrolling与txt的移动方向是相反的。设scrolling移动的值为distance,则有txt移动的值为-distance*((txt._height-maskheight)/(maskheight-scrolling._height))(如上面代码的倒数第3行) 选中as层的第三帧,按F9打开Actions面板,输入如下代码: gotoAndPlay(2); 说 明:通过第二帧和第三帧的反复循环播放,不断判断鼠标是否按下、鼠标的位置,从而实现滚动条的效果。 第三步:书签效果 选中as层的第一帧,按F9打开Actions面板,在原来的代码的后面输入如下代码: //txt下的各title"在txt中"的位置: position = new Array(); for (i=1; i<=8; i++) { position[i] = eval("txt.title"+i)._y-eval("txt.title"+i)._height/2; } n = position[1]+txt.y1;//当txt.title1位于最上方时,txt.title1"在主场景中"的位置 delete i; //书签部分: for (i=1; i<=8; i++) { titlename = "title"+i; eval(titlename).onPress = function() { this.y1 = txt._y; num = Number(substring(this._name, 6, -1)); txt._y = n-position[num]+3; scrolling._y -= (txt._y-this.y1)*((maskheight-scrolling._height)/(txt._height-maskheight)); //滚动位置的变化 this.gotoAndStop(1); }; eval(titlename).onRollOver = function() { this.gotoAndPlay(2); }; eval(titlename).onRollOut = function() { this.gotoAndStop(1); }; } delete i; delete titlename; 分别获取txt中的title1~title8“在txt中的”位置。 在这里要说明一点: 我们平时通过mc._y来获取的mc在y方向的位置,不论这段代码放在哪里,其值都是该mc的原点(即mc的x=0,y=0处)在其上一级mc中(_parent)y方向的位置,而不是在主场景(_root)中的位置,当然,如果mc直接放在主场景中则为主场景中的位置。例如有这样一种结构: 如上图所示,主场景中有mc2,mc2中有mc1,mc1中有mc,如果设一变量_root.mcy来存放mc的y方向位置,无论是在主场景中还是在mc2或mc1中,_root.mcy的值都是mc的原点在mc1中的位置,如果要获得mc在mc2中的位置,只要换成mc1.mc._y-mc1._y就行了。 我们这里设一个数组来存放txt中的title1~title8“在txt中的”位置,之所以要减去eval("txt.title"+i)._height/2即该title的高度的一半,是因为我们这里要得到的是title的顶部的位置。 获取当txt.title1在场景的最上方时,txt在主场景中的y方向位置n。 实现书签效果。 通过txt.title1~txt.title8在txt的位置之间的差值和它们与txt.title1在主场景中的位置(n)可以分别换算出txt.title1~txt.title8在场景的最上方时txt在主场景中的y方向位置。 通过scrolling与txt的控制比例,反过来用txt的移动来控制scrolling位置变动,些时,控制比例变为(maskheight-scrolling._height)/(txt._height-maskheight) >>点击下载FLA源文件 关键词:网页 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: [原创]flash的麦克风对象的介绍下一篇: swish max 做火焰效果
关于FLASH实现滚动条+网页书签效果的所有评论