作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试在客户端获取图像作为 javascript 的 Object
以使用 jQuery 发送它
<html>
<body>
<script language="JavaScript">
function checkSize()
{
im = new Image();
im.src = document.Upload.submitfile.value;
if(!im.src)
im.src = document.getElementById('submitfile').value;
alert(im.src);
alert(im.width);
alert(im.height);
alert(im.fileSize);
}
</script>
<form name="Upload" action="#" enctype="multipart/form-data" method="post">
<p>Filename: <input type="file" name="submitfile" id="submitfile" />
<input type="button" value="Send" onClick="checkSize();" />
</form>
</body>
</html>
但是在这段代码中只有 alert(im.src)
显示文件的 src
但是 alert(im.width),alert(im.height) ,alert(im.filesize)
无法正常工作并分别警告 0
、0
、undefined
。请告诉我如何使用 javascript 访问图像对象?
最佳答案
im.fileSize 只能在 IE 中工作的原因是因为“.fileSize”只是一个 IE 属性。因为你有在 IE 中工作的代码,我会检查浏览器并为 IE 呈现你当前的代码,然后为其他浏览器尝试类似的东西。
var imgFile = document.getElementById('submitfile');
if (imgFile.files && imgFile.files[0]) {
var width;
var height;
var fileSize;
var reader = new FileReader();
reader.onload = function(event) {
var dataUri = event.target.result,
img = document.createElement("img");
img.src = dataUri;
width = img.width;
height = img.height;
fileSize = imgFile.files[0].size;
alert(width);
alert(height);
alert(fileSize);
};
reader.onerror = function(event) {
console.error("File could not be read! Code " + event.target.error.code);
};
reader.readAsDataURL(imgFile.files[0]);
}
我还没有测试过这段代码,但只要我没有输入错误,它应该可以工作。为了更好地了解我在这里做什么,请查看此 link .
关于javascript - 使用javascript上传图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13373834/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!