最近公司做了一个微信公共账号,公共账号内嵌了一个公司的wap网站.
网站中有一个功能,可以上传文件,在普通手机浏览器中使用无问题,但是通过微信打开,发现凡是<input type='file' >的文件选择框,
点击都没有响应,也就是无法上传文件.
百度搜索了一下,发现不少同学都遇到了这个问题,基本确认是微信android版内嵌浏览器的问题.(ios版可以正常使用)
可以参考以下:
http://www.baidu.com/s?wd=%E5%BE%AE%E4%BF%A1+input+file&rsv_spt=1&issp=1&rsv_bp=0&ie=utf-8&tn=monline_5_dg&rsv_sug3=5&rsv_sug=0&rsv_sug1=4&rsv_sug4=71
那么如果公共账号中,必须要有上传文件的功能,那如何实现呢.
翻阅了一些网站,发现百度图片搜索可以实现类似的功能
http://stu.baidu.com/ 点击本地上传
经过分析源代码和观察实现.确认百度图片搜索的上传图片不是通过input上传的
而是通过html内嵌的flash来实现上传的.绝大部分android手机也是支持flash的.
具体说就是在网页中内嵌一个flash,点击flash,由flash来上传.
具体的实现可以使用flash中的filereference来实现,
参考http://hi.baidu.com/cyrist/item/f70ca6a5ebf766db5bf191bc
有需要的同学,找个会flash的小伙伴研究一下吧.
我自己用flash builder 4.7调试了一下,应该是可行的.