【转】JS判断SWF,JPG加载完毕、兼容(Activex,plugIn)所有浏览器

JS判断SWF,JPG加载完毕、兼容(Activex,plugIn)所有浏览器

 

这里主要说下监听SWF的加载。

网上流传已久的监听方法,只能在IE(Activex插件下)下实现。在使用plugin的浏览器下无法监听。


首先贴张 chrome下载图

【转】JS判断SWF,JPG加载完毕、兼容(Activex,plugIn)所有浏览器



这里提供一个可以监听所有浏览器的方式:

原作者在这里:http://blog.sebastian-martens.de/2010/05/preload-assets-with-javascript-load-complete-callback-for-single-assets-include-swfflash/ 


我修改后方便阅读使用的使用的版本:(20140718更新了以下失效链接)

http://pan.baidu.com/s/1sjLhJIH  

注意我加载的SWF在我的空间,跨域以及本地都无法调用。请自行修改HTML中加载SWF的路径,并不要使用 file://来访问。


你可以在我的网站查看效果

http://luoee.com/lab/jsloadswf/  本人小站暂时关闭


原理说明:

看了下作者的文件简单来说:还是使用了JS与一个loader的swf来完成监听的。

通过JS将要加载的文件地址传输给这个事先制作好的loader,通过这个swf来加载文件,同时监听加载完成时,调用JS来抛出事件。

这个demo不会显示出swf,只是用来监听使用。如果你的网站有很多swf(小游戏网站),那么你可以这样来实现:

1 制作一个loading等待的图片(可以是广告图等)

2 等到监听到加载完毕时,关闭loading ,再重新使用你自己的代码来加载SWF并显示。(这时将会从缓存读取,注意safari最大缓存的单个文件是5M 至少目前是这么大)


也许你要问为什么不直接用它的方式来显示呢?

当让你需要修改它的代码,这个对很多人来说有一点难度吧,另外如果你加载SWF与页面有数据交互的话使用它的方式可能会失效!


如果你对FLASH和js都有一定了解,那么你也可以自己写一个loader,来实现这些功能。当然你在制作这个loader的时候可以跟具你自己的需求来自定义,这样就不需要再有上面的第2步了。


我在这里就不在新制作一个了。如果公司后期有需求,我再制作一下!并共享出来!

 

转载于:https://www.cnblogs.com/seanp/p/6522103.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值