码迷,mamicode.com
首页 > 其他好文 > 详细

safari下无法模拟click()的解决方法

时间:2014-08-26 13:04:06      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:blog   http   os   java   使用   io   文件   ar   div   

之前在HTML5 File API — 打开本地图片并预览里提供一种模拟单击file控件的方法,后来发现这种方法在safari下无法使用。。。之前的旅行笔记和天地图版都是这样,导致safari下点击打开文件按钮不可用,也不提示错误,也不知道是不是这个原因比赛没有入围,唉。。。。

 

解决方法很简单,其实不是不能模拟safari,之前<input type="file"/>隐藏用的是display:none,之后改成visibility:hidden,就可以用了!!!我擦。

原因估计就是didplay没有占位了,safari找不到了。。。。

 

此外,safari下的file的accept属性不可用,所以在选择文件的时候需要判断,在file的change事件函数里判断一下:

    		$(‘#file‘).change(function(e) {
				var f = e.target.files[0];
				if(!f.type.match(‘image.*‘)) {
					alert(‘你选择的不是图片文件‘);
					return;
				}
				//_this.openFile(f);
			});

这里因为只选择一个文件,如果可选多个文件,就循环判断就行了。

 

safari下无法模拟click()的解决方法

标签:blog   http   os   java   使用   io   文件   ar   div   

原文地址:http://www.cnblogs.com/zjzhome/p/3936877.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!