我正在使用JQuery Mobile构建移动Web应用程序。我在应用程序中完成了图像上传,我访问移动相机拍照并上传。
我的问题是当我上传图片时,如果我的互联网不好我丢失了我上传的图片。
代码:
<form id="uploadimage" action="" method="post" enctype="multipart/form-data">
<input type="file" data-clear-btn="false" name="file" id="file" accept="image/*" capture>
<input type="submit" value="Upload" class="submit" />
</form>
问题:
当互联网连接良好时,我有什么方法可以上传图片。
有没有办法通过创建文件夹来保存图像并稍后从中上传?
如何使用&#34; jQuery mobile&#34;来检查互联网强度?并提示用户网络较低,以便他/她稍后上传!
或
还有其他方法可以解决吗?
注意:
我的应用程序是通过&#34;浏览器&#34;所以我知道我只能访问文件夹。
请不要建议我创建一个APP,所以我可以实现我的解决方案。因为我已经有一个这样的APP。但我的用户很少需要Web应用程序。
答案 0 :(得分:1)
这只是一个想法:
1)当您尝试上传文件时,您可以开始超时:
var uploadTimeout= window.setTimeout( function() {
alert( "upload is slow" );
// cancel upload and save in temp folder here
}, 1000 );
$(document).on( 'load', function() {
window.clearTimeout( uploadTimeout);
}, false );
2)如果崩溃或达到超时,您可以使用客户端本地存储在客户端存储文件:http://www.w3schools.com/html/html5_webstorage.asp
3)虽然localStorage中有一些文件重试上传它们。