所以,基本上,我需要上传单个图像,将其保存到localStorage中,然后在下一页上显示它。
目前,我有我的HTML文件上载:
<input type='file' id="uploadBannerImage" onchange="readURL(this);" />
它使用该函数在页面上显示图像
function readURL(input)
{
document.getElementById("bannerImg").style.display = "block";
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
document.getElementById('bannerImg').src = e.target.result;
}
reader.readAsDataURL(input.files[0]);
}
}
图像会立即显示在页面上供用户查看。然后要求他们填写表格的其余部分。这部分工作很好。
一旦表格完成,他们然后按下一个“保存”按钮。按下此按钮后,我将所有表单输入保存为localstorage
字符串。我需要一种方法来将图像保存为localstorage
项。
save按钮还将引导他们进入一个新页面。这个新页面将在一个表中显示用户的数据,图像位于顶部。
所以简单明了,我需要在按下“保存”按钮后将图像保存在localstorage
中,然后在下一页从localstorage
中借用图像。
我在moz://a hacks上找到了一些解决方案,比如这把小提琴和这篇文章。
虽然我仍然非常困惑这是如何工作的,我只需要一个简单的解决方案。基本上,一旦按下“保存”按钮,我只需要通过getElementByID
找到图像,然后处理并保存图像。
我在localStorage JQueryImageCaching中编写了一个保存图像的2.2KB库:
<img data-src="path/to/image">
<script>
$('img').imageCaching();
</script>
谁也需要解决这个问题:
首先,我使用getElementByID
获取图像,并将图像保存为Base64。然后将Base64字符串保存为localstorage
值。
bannerImage = document.getElementById('bannerImg');
imgData = getBase64Image(bannerImage);
localStorage.setItem("imgData", imgData);
下面是将图像转换为Base64字符串的函数:
function getBase64Image(img) {
var canvas = document.createElement("canvas");
canvas.width = img.width;
canvas.height = img.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0);
var dataURL = canvas.toDataURL("image/png");
return dataURL.replace(/^data:image\/(png|jpg);base64,/, "");
}
然后,在我的下一页上,我创建了一个带有空白src
的图像,如下所示:
<img src="" id="tableBanner" />
直接加载页面时,我使用以下三行从localstorage
获取Base64字符串,并将其应用到带有我创建的空白src
的图像:
var dataImage = localStorage.getItem('imgData');
bannerImg = document.getElementById('tableBanner');
bannerImg.src = "data:image/png;base64," + dataImage;
在相当多的不同浏览器和版本中测试了它,看起来工作得相当不错。
问题内容: 因此,基本上,我需要上传单个图像,将其保存到localStorage,然后在下一页上显示。 目前,我已经上传了HTML文件: 使用该功能在页面上显示图像 该图像立即显示在页面上,供用户查看。然后要求他们填写表格的其余部分。这部分工作正常。 表格填写完毕后,他们将按“保存”按钮。按下此按钮后,我将所有表单输入另存为字符串。我需要一种将图像另存为项目的方法。 保存按钮还会将它们定向到新页面
问题内容: 在我的应用程序中,我在div中有一个图像,一个按钮。 我想旋转显示的图像,并在使用jquery单击按钮时保存旋转的图像。 我已经使用了代码: http://code.google.com/p/jquery-rotate/ 和jQuery代码: html代码: 当我使用上述代码时,有两个图像,一个是旧图像,另一个是旋转图像。 在这里我想旋转相同的图像并仅显示旋转的图像。并将旋转的图像保存
它将我带到图库以选择图像,但未显示在应用程序中,当单击上传按钮时,它只是一个空白图像视图 < li >我的Java代码 < li>XML代码 运行时显示此错误 java.lang.IllegalArgumentException:uri不能为空 以下两处给出错误的行显示了uri错误
问题内容: 我需要上传,显示并保存图像,以免刷新本地主机时不会丢失它。这需要使用“上传”按钮来完成,该按钮提示选择文件。 我正在使用node.js并表示服务器端代码。 问题答案: 首先,您应该制作一个包含文件input元素的HTML表单。您还需要将表单的 enctype 属性设置为 multipart / form- data : 假设在 index.html 中定义了表单,该表单存储在相对于脚本
我试图在我的readme.md中显示两张照片之间的比较,这就是为什么我想并排显示它们。以下是这两个图像当前的放置方式。我想并排显示两个日光化配色方案,而不是顶部和底部。非常感谢您的帮助,谢谢!
问题内容: 我必须使用JavaScript创建一个表单,用户将上载JPG文件并与其他信息(例如名称,电子邮件等)一起提交。当用户单击提交时,表单中的所有信息将被加载到值对象中。对于图像文件,我将其设置为。 所以假设: 我还设置了一个servlet来处理提交,但是我不确定如何开始。上传如何进行?用户提交时,如何获取图像信息?这是屏幕截图:http : //imageshack.us/f/32/776