一、前言
前些日子发了一篇文章,介绍了自己写的一个html5文件上传插件,链接:http://blog.csdn.net/never_say_goodbye/article/details/8598521 。在支持html5的浏览器下可实现轻松的文件上传,而且支持多文件、显示进度条。但在实际的项目中,往往要支持多种浏览器,在低版本的浏览器中,无法很好的支持html5,就必须考虑其他的方案。因需要展示进度条等,所以flash往往是很好的选择。在此不得不提uploadify,是一款优秀的上传插件,提供很多个性化的配置参数,其官方有flash和html5两个版本,但html5版本是要收费的。对于习惯用免费的国人来说,这显然是很不好的事情,还好,我已山寨出一个html5版本,基本的api均已实现,可以满足我的项目中的需求了。在我的项目中,页面需要支持PC和移动端设备,所以需要根据不同的设备、浏览器来调用不同版本的上传插件。那么,今天就来介绍,我是如何在项目中使用flash和html5解决文件上传兼容的。
二、概述
我拥有两个插件,一个是flash版本的uploadify,免费的。另一个是自己写的html5版本的,名叫html5uploader(好俗的名字。。),再加一个适配器uploadadapter,用来决定在什么时候调用哪个插件。页面中只调用uploadadapter。关键的难题就在于,页面中的代码是只写一次的,不管是flash的还是html5的都得能识别出页面上的参数,这也就是我的山寨版本的插件做的事情,原fla