jQuery mobile稍后在互联网良好时上传图片
Posted
技术标签:
【中文标题】jQuery mobile稍后在互联网良好时上传图片【英文标题】:jQuery mobile Upload Image later when Internet is good 【发布时间】:2016-07-17 02:16:34 【问题描述】:我正在使用 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>
问题:
以后有什么办法可以在网络连接好的时候上传图片吗?
有没有办法通过创建一个文件夹来保存图像并稍后从它上传?
如何使用“jQuery mobile”查看网速并提示用户网速低,以便他/她稍后上传!
或者
还有其他办法解决吗?
注意:
我的应用程序是通过“浏览器”访问的,所以我知道我只能访问文件夹。
请不要建议我创建一个 APP,这样我才能实现我的解决方案。因为我已经有一个应用程序来解决这个问题。但是我的用户中很少有人需要 Web 应用程序。
【问题讨论】:
【参考方案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 中有一些文件时,重试上传。
【讨论】:
你认为..我们可以访问临时文件夹中的文件吗? 本地存储可以保存图片吗?我阅读了 html5_webstorage 的链接。但正如您所知,三星或 ios 中的单个图像大小从 4-5MB 不等,但我的应用程序必须存储更多...但是 HTML5 可以存储 5Mb 但单独数据? 你是对的 Html5 存储限制为每个来源 10MB(在 chrome 中)。您应该在保存之前在客户端压缩图片。在我们的应用程序中,我们在上传之前使用画布。 (类似***.com/a/6752580/5703316)以上是关于jQuery mobile稍后在互联网良好时上传图片的主要内容,如果未能解决你的问题,请参考以下文章
jquery mobile 与 phonegap 404 ajax 错误。但在 Firefox、IE 中运行良好
Jquery mobile 阻止从我的基于 django 的站点下载
jQuery mobile 100% 高度页面,等于可见区域
Mobiscroll datepicker 被 jQuery Mobile 模态隐藏