关于loading的一些技巧

近日在做一个flash的时候,发现了一个非常奇怪的问题,就是loading的进度条是从64%开始的,而且进度条出现之前,一片空白,但是上传到空间之后,却发现loding完全失效,望各位help一下,我琢磨了2个多小时,头都快大了.以下是前两帧的代码
第一帧:
totalB = _root.getBytesTotal();
loaded = _root.getBytesLoaded();
trace(loaded);
per = Math.round(loaded/totalB*100);
trace(per);
_root.load_bar._xscale = per;
loadper = per+"%";
第二帧:
if(loaded>=totalB){
       gotoAndPlay("场景 1",1);
}
else{
gotoAndPlay(1);
}
先谢过了!

stop()
_root.createEmptyMovieClip("Loading_mc",_root.getNextHighestDepth())
Loading_mc.beginFill(0x5f6165)
Loading_mc.moveTo( 0, 10 );
Loading_mc.lineTo( 0, 0 ); 
Loading_mc.lineTo( 350, 0 );
Loading_mc.lineTo( 350, 10 );
Loading_mc.lineTo( 0, 10 );
Loading_mc._x=200
Loading_mc._y=350
_root.createTextField("Loading_txt",_root.getNextHighestDepth(),200,370,30,20)
Loading_txt.border=false
Loading_txt.multiline = true;
Loading_txt.wordWrap = true;
Loading_mc.onEnterFrame=function(){
       if(_root.getBytesLoaded()>=_root.getBytesTotal()){
       _root.play()
       _root.Loading_mc.removeMovieClip()
       _root.Loading_txt.removeTextField()
       }else{
              _root.Loading_mc._xscale=(_root.getBytesLoaded()/_root.getBytesTotal())*100
              _root.Loading_txt.text=int(Loading_mc._xscale).toString()+"%"
              _root.Loading_txt._x=Loading_mc._width+200
       }
}

放到第1帧就OK了.

代码解读:
1  让影片在第1帧时停止播放;
2  在根路径也就是_root的位置建立一个影片剪辑,它的名称为Loading_mc,它的层深为根路径中现在没有使用的的第一个层深。
3       Loading_mc影片剪辑填充为0x5f6165色;
4~8  将它移动到X:0,Y:10的位置开始绘制,坐标为0~350,高度为10;
9       它的X坐标等于200;
10       它的Y坐标等于300;
11       在根路径建立一个文本字段,它的名称为Loading_txt,它的层深为根路径没有使用的最后一个层深,它的X坐标为200,Y坐标为370,宽度为30,高度为20;
12       它的边框属性border为假,也就是它没有边框;
13       它可以是多行文本;
14       它可以自动换行;
15       当Loading_mc影片剪辑开始播放时,每播放一帧,执行一次以下代码;
16       当根路径已经加载的字节,超过或者等于它的总字节时;
17       根路径开始播放;
18       并且删去Loading_mc这个影片剪辑;
19       删去Loading_txt这个字段;
20       如果条件不成立的话;
21       Loading_mc影片剪辑的宽度缩放比例,等于根路径的已下载字节除以根路径的总字节的值,乘以100;
22       Loading_txt字段的文字内容,等于对宽度缩放比例的值,取整之后,再转换为字符类型,然后加上“%”百分号;
23       而它的坐标等于Loading_mc影片剪辑的宽度加上200。

非常感谢爱老虎油的解答,但是我想我的问题可能有点不一样,因为,即使我在第一帧里加入如下两行
trace("loaded");
stop();
也是过一段满长的时间,才显示loaded,并且进度条停在了64%处,
我想是不是影片加载到64%的时候才开始执行我的代码,我把代码放在场景1,主影片放在场景2

也许我说的不对,仅供参考.
其一,我不知道你用什么版本,但是你的变量没有指定数据类型.
其二,第一帧里检查一下,有什么大东西没有.不要放在第1帧.
其三,_root.load_bar._xscale = per;这句说明per是数值型,但是.loadper = per+"%"未转换数据类型进行操作.
其四,_root.getBytesLoaded();表示什么?本场景的字节吗?如果想全局的话用_global好不.
其五,gotoAndPlay("场景 1",1);使用汉字做场景名称的话,并不是程序推荐的作法.
其六,Math.round()是什么意思?四舍五入吗?不准确吧,换int吧.

总结:其它都是小问题,_root换成_global,可能是主要的问题所在,

(0)

相关推荐

  • 关于loading的一些技巧

    近日在做一个flash的时候,发现了一个非常奇怪的问题,就是loading的进度条是从64%开始的,而且进度条出现之前,一片空白,但是上传到空间之后,却发现loding完全失效,望各位help一下,我琢磨了2个多小时,头都快大了.以下是前两帧的代码 第一帧: totalB = _root.getBytesTotal(); loaded = _root.getBytesLoaded(); trace(loaded); per = Math.round(loaded/totalB*100); tra

  • AngularJS使用拦截器实现的loading功能完整实例

    本文实例讲述了AngularJS使用拦截器实现的loading功能.分享给大家供大家参考,具体如下: <!DOCTYPE html> <html lang="zh-CN" ng-app="myApp"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge

  • 关于使用axios的一些心得技巧分享

    本文主要跟大家介绍了关于使用axios的一些心得技巧,分享出来供大家参考学习,下面来一起看看详细的介绍: 一.带cookie请求 axios默认是请求的时候不会带上cookie的,需要通过设置withCredentials: true来解决. 二.使post请求发送的是formdata格式数据 首先必须设置请求头 //可以通过这种方式给axios设置的默认请求头 axios.defaults.headers = { "Content-Type": "application/x

  • iOS中UIWebView网页加载组件的基础及使用技巧实例

    基本用法示例 - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. UIWebView * webView = [[UIWebView alloc]initWithFrame:CGRectMake(0, 20, ScreenWidth, ScreenHeight-20)]; // 自动队页面进行缩放以适应屏幕 webView.scalesPageToFit = Y

  • Kotlin开发的一些实用小技巧总结

    前言 随着Google I/O大会的召开,Google宣布将支持Kotlin作为Android的开发语言,最近关于Kotlin的文章.介绍就异常的活跃. 本文主要给大家介绍了关于Kotlin开发的一些实用小技巧,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 1.Lazy Loading(懒加载) 延迟加载有几个好处.延迟加载能让程序启动时间更快,因为加载被推迟到访问变量时. 这在使用 Kotlin 的 Android 应用程序而不是服务器应用程序中特别有用.对于 Androi

  • js实现的页面加载完毕之前loading提示效果完整示例【附demo源码下载】

    本文实例讲述了js实现的页面加载完毕之前loading提示效果.分享给大家供大家参考,具体如下: 一.JS代码: //获取浏览器页面可见高度和宽度 var _PageHeight = document.documentElement.clientHeight, _PageWidth = document.documentElement.clientWidth; //计算loading框距离顶部和左部的距离(loading框的宽度为215px,高度为61px) var _LoadingTop =

  • PHPer 需要了解的 5 个 Composer 小技巧

    Composer是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<PHP管理依赖(dependency)关系工具 Composer 安装与使用>.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方便. 1. 仅更新单个库 只想更新某个特定的库,不想更新它的所有依赖,很简单: composer update foo/bar 此外,这个技巧还可以用来解决"警告信息问题".你一定见过这样的警告信息: Warning: The lock file is

  • PHP实现简单ajax Loading加载功能示例

    本文实例讲述了PHP实现简单ajax Loading加载功能.分享给大家供大家参考,具体如下: var xmlHttp; function createXmlHttpReq() { if(window.ActiveXObject) { xmlHttp = new ActiveXObject('Microsoft.XMLHTTP'); } else if(window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } } function fu

  • PHP 文件上传后端处理实用技巧方法

    PHP 文件上传后端处理实用技巧方法 引语:在上一篇文章中说到,在页面中可以用隐藏的方式让你的上传页面看起来漂亮.但是这对于性能来说,并没有什么卵用,那么在后台的处理中,难道就没有一些处理技巧么?所谓后台的技巧,应该要包括上传得快一点,上传的文件大一点!那么,本文就来说说,后端处理都有些什么技巧吧! 业务场景一.我们只会选择一个单个的文件上传,而且不需要做一些即时的验证工作.那么,也许并没有什么优化可言了,因为,最后你要做的,只是将这个文件放在表单里最后一起提交,直接处理即可! 业务场景二.需要

  • 基于ajax html实现文件上传技巧总结

    引语:大家都知道,html中上传文件就一个input,type=file就搞定了.但是,这个标签的样式,实在不值得提点什么,要改动他的样式,恐怕也是较难的.但是其实挺简单,今天就来说说上传文件小技巧吧! 1. 怎样自定义样式? 1).只管按照自己喜欢看到的样式去定义即可,如<a href='javascript:;' class='upload-button'></a>,可以是背景图片效果,可以是文字指示,总之想怎么改怎么改!有了按钮,还需要一个文件名容器,用来存放选择上传文件时的

随机推荐