手动阀

Good Luck To You!

使用javascript获取flash加载的百分比的实现代码

要使用JavaScript获取Flash加载的百分比,您需要确保Flash对象具有一个可以调用的方法来返回其加载进度,以下是一个示例代码,演示如何实现这一功能:

假设您的Flash文件已经嵌入到HTML中,并且有一个ID为"myFlash"。

<object id="myFlash" width="550" height="400">
  <param name="movie" value="myflash.swf">
  <embed src="myflash.swf" width="550" height="400">
  </embed>
</object>

在Flash文件中,您需要添加一个方法来返回加载进度,这可以通过在ActionScript中定义一个函数来实现,该函数返回当前的加载进度。

function getLoadPercent():Number {
    return this.getBytesLoaded() / this.getBytesTotal() * 100;
}

在JavaScript中,您可以使用以下代码来定期检查Flash对象的加载进度:

function checkFlashLoadProgress() {
    var flashObj = document.getElementById("myFlash");
    if (flashObj) {
        var loadPercent = flashObj.getLoadPercent(); // 调用Flash中的getLoadPercent方法
        if (loadPercent !== undefined) {
            console.log("Flash加载进度: " + loadPercent + "%");
            if (loadPercent < 100) {
                setTimeout(checkFlashLoadProgress, 100); // 每隔100毫秒检查一次
            } else {
                console.log("Flash已完全加载");
            }
        } else {
            console.log("无法获取加载进度");
        }
    } else {
        console.log("未找到Flash对象");
    }
}
// 开始检查加载进度
checkFlashLoadProgress();

这段代码首先尝试获取Flash对象,并调用其getLoadPercent方法来获取加载进度,如果加载尚未完成(即进度小于100%),它将设置一个定时器,每隔100毫秒再次检查进度,一旦加载完成,它将停止检查并输出相应的消息。

为了使此代码正常工作,Flash对象必须正确嵌入,并且Flash文件必须允许外部脚本与之交互,确保浏览器支持Flash,因为许多现代浏览器已经不再支持Flash。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

Copyright Your WebSite.Some Rights Reserved.