js怎么判断flash swf文件是否加载完毕


Posted in Javascript onAugust 14, 2014

js怎么判断flash是否加载完毕了呢?

我们怎么在flash加载完毕之时,回调一个我们设定的js函数?

这个问题,一直困扰了我很久,直到今天,请教了一个非常牛B的人物之后,突然来了感觉!

呵呵,也许,这个问题在你们看来不是问题,不过对于我来说,确实是个问题,因为我一直不知道该怎么判断swf文件是否加载完毕了?

从前都是只知道img.onload等等。

好了,言归正传,我们到底该怎样判断一个flash是否加载完了呢?

没错,就是轮询,然后判断flash的某个方法是否能正常运行?

示例如下(伪代码):

(function () { 
var flash = 网页上某个flash对象。 

var interval = setInterval(function () { 
try { 
if(flash.IsPlaying()) { //轮询flash的某个方法即可 
callBack && callBack.call(flash, args); //回调函数 
clearInterval(interval); 
} 
} catch (ex) { 

} 
}, 1000); 

var callBack = function () { 
alert('loaded'); 
} 
})();

//具体运用时,flash放进setInterval或者setTimeout的函数闭包中时,可能会由于JavaScript单线程问题,导致flash不能调用IsPlaying等flash player函数或者调用结果不对等状况,这里有个临时的解决办法,我们可以读取在轮询函数中读取flash的TotalFrames属性,读取得到,我们就可以认为flash已经完全加载到页面中了!!!

经测试,确实可行,不过可能会有1—2秒的时间延迟。

/////////////有什么不对的地方,欢迎勘误!!!!!!!!!//////////////

/*后面附上可控制Flash Player的js方法列表*/

Play() ---------------------------------------- 播放动画
StopPlay()------------------------------------停止动画
IsPlaying()----------------------------------- 动画是否正在播放
GotoFrame(frame_number)---------------- 跳转到某帧
TotalFrames()------------------------------- 获取动画总帧数
CurrentFrame()------------------------------回传当前动画所在帧数-1
Rewind()-------------------------------------使动画返回第一帧
SetZoomRect(left,top,right,buttom)-------放大指定区域
Zoom(percent)------------------------------改变动画大小
Pan(x_position,y_position,unit)------------使动画在x,y方向上平移
PercentLoaded()----------------------------返回动画被载入的百分比
LoadMovie(level_number,path)----------- 加载动画
TGotoFrame(movie_clip,frame_number)- movie_clip跳转到指定帧数
TGotoLabel(movie_clip,label_name)------ movie_clip跳转到指定标签
TCurrentFrame(movie_clip)--------------- 回传movie_clip当前帧-1
TCurrentLabel(movie_clip)-----------------回传movie_clip当前标签
TPlay(movie_clip)---------------------------播放movie_clip
TStopPlay(movie_clip)----------------------停止movie_clip的播放
GetVariable(variable_name)-----------------获取变量
SetVariable(variable_name,value)-----------变量赋值
TCallFrame(movie_clip,frame_number)---call指定帧上的action
TCallLabel(movie_clip,label)----------------call指定标签上的action
TGetProperty(movie_clip,property)--------获取movie_clip的指定属性
TSetProperty(movie_clip,property,number)-设置movie_clip的指定属性

Javascript 相关文章推荐
仅用[]()+!等符号就足以实现几乎任意Javascript代码
Mar 01 Javascript
Jquery Uploadify上传带进度条的简单实例
Feb 12 Javascript
JS+CSS实现大气清新的滑动菜单效果代码
Oct 22 Javascript
ui组件之input多选下拉实现方法(带有搜索功能)
Jul 14 Javascript
JavaScript的六种继承方式(推荐)
Jun 26 Javascript
vue router-link传参以及参数的使用实例
Nov 10 Javascript
玩转Koa之核心原理分析
Dec 29 Javascript
浅谈Vuex注入Vue生命周期的过程
May 20 Javascript
JS查找孩子节点简单示例
Jul 25 Javascript
swiper实现异形轮播效果
Nov 28 Javascript
JavaScript使用canvas绘制随机验证码
Feb 17 Javascript
JavaScript架构localStorage特殊场景下二次封装操作
Jun 21 Javascript
Node.js入门教程:在windows和Linux上安装配置Node.js图文教程
Aug 14 #Javascript
JQuery Tips相关(1)----关于$.Ready()
Aug 14 #Javascript
javascript实现获取cookie过期时间的变通方法
Aug 14 #Javascript
javascript检查浏览器是否支持flash的实现代码
Aug 14 #Javascript
用Jquery选择器计算table中的某一列某一行的合计
Aug 13 #Javascript
html文档中的location对象属性理解及常见的用法
Aug 13 #Javascript
js中string转int把String类型转化成int类型
Aug 13 #Javascript
You might like
农民和部队如何穿矿
2020/03/04 星际争霸
php学习 函数 课件
2008/06/15 PHP
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
CURL状态码列表(详细)
2013/06/27 PHP
javascript instanceof 与typeof使用说明
2010/01/11 Javascript
jquery图片不完全按比例自动缩小的简单代码
2013/07/29 Javascript
javascript跟随滚动效果插件代码(javascript Follow Plugin)
2013/08/03 Javascript
让jQuery与其他JavaScript库并存避免冲突的方法
2013/12/23 Javascript
JavaScript实现twitter puddles算法实例
2014/12/06 Javascript
自定义jQuery插件方式实现强制对象重绘的方法
2015/03/23 Javascript
JavaScript获取图片像素颜色并转换为box-shadow显示
2016/03/11 Javascript
几种二级联动案例(jQuery\Array\Ajax php)
2016/08/13 Javascript
炫酷的js手风琴效果
2016/10/13 Javascript
完美实现js焦点轮播效果(一)
2017/03/07 Javascript
jQuery使用ajax_动力节点Java学院整理
2017/07/05 jQuery
Vuex的基本概念、项目搭建以及入坑点
2018/11/04 Javascript
开发Node CLI构建微信小程序脚手架的示例
2020/03/27 Javascript
用Python中的字典来处理索引统计的方法
2015/05/05 Python
Python OS模块常用函数说明
2015/05/23 Python
Python检测网络延迟的代码
2018/05/15 Python
基于多进程中APScheduler重复运行的解决方法
2019/07/22 Python
win10安装tensorflow-gpu1.8.0详细完整步骤
2020/01/20 Python
python爬虫中抓取指数的实例讲解
2020/12/01 Python
浅谈css3中的前缀
2016/07/20 HTML / CSS
英国顶级家庭折扣店:The Works
2017/09/06 全球购物
英国专业美容产品在线:Mylee(从指甲到脱毛)
2020/07/06 全球购物
大学生职业生涯规划书范文
2014/01/14 职场文书
文案策划求职信
2014/03/18 职场文书
个人公开承诺书
2014/03/28 职场文书
教师中国梦演讲稿
2014/04/23 职场文书
三八活动策划方案
2014/08/17 职场文书
师德师风剖析材料
2014/09/30 职场文书
民事诉讼代理委托书
2014/10/08 职场文书
2014年工程师工作总结
2014/11/25 职场文书
Spring Data JPA框架自定义Repository接口
2022/04/28 Java/Android
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL