Javascript 前端图像上传问题
我需要实现图像上传,使缩略图显示在按钮旁边。。我已经使用函数“getAsDataURL”实现了它,。。。它在chrome和safari中不起作用。。。。有什么解决办法吗Javascript 前端图像上传问题,javascript,jquery,Javascript,Jquery,我需要实现图像上传,使缩略图显示在按钮旁边。。我已经使用函数“getAsDataURL”实现了它,。。。它在chrome和safari中不起作用。。。。有什么解决办法吗 <script type="text/javascript"> function setImage(file) { if(document.all) document.getElementById('prevImage').src = file.value;
<script type="text/javascript">
function setImage(file) {
if(document.all)
document.getElementById('prevImage').src = file.value;
else
document.getElementById('prevImage').src = file.files.item(0).getAsDataURL();
if(document.getElementById('prevImage').src.length > 0)
document.getElementById('prevImage').style.display = 'block';
}
</script>
<div class="uploading_block_inner">
<div class="uploaded_img_inner"><img id="prevImage" style="display:none;" width="91" height="91" /></div>
<div class="submit_button_upload">
<div class="upload"><input type="file" id="" name="myImage" onchange="setImage(this);" /></div>
</div>
<div class="upload_submit_inner"><input type="submit" name="" value="" /></div>
</div>
函数setImage(文件){
如果(全部文件)
document.getElementById('prevImage').src=file.value;
其他的
document.getElementById('prevImage').src=file.files.item(0.getAsDataURL();
if(document.getElementById('prevImage').src.length>0)
document.getElementById('prevImage').style.display='block';
}
假设您使用的是jQuery,我为您提供了以下解决方案
$(document).ready(function(){
$('input[type=file]').on('change', setImage);
});
function setImage(file)
{
if(document.all)
{
document.getElementById('prevImage').src = file.value;
}
else
{
document.getElementById('prevImage').src = file.files.item(0).getAsDataURL();
}
if(document.getElementById('prevImage').src.length > 0)
{
document.getElementById('prevImage').style.display = 'block';
}
}
假设您使用的是jQuery,我为您提供了以下解决方案
$(document).ready(function(){
$('input[type=file]').on('change', setImage);
});
function setImage(file)
{
if(document.all)
{
document.getElementById('prevImage').src = file.value;
}
else
{
document.getElementById('prevImage').src = file.files.item(0).getAsDataURL();
}
if(document.getElementById('prevImage').src.length > 0)
{
document.getElementById('prevImage').style.display = 'block';
}
}
以下是答案,我认为Mozilla非标准getAsDataURL函数尚未被接受(也将从firefox中删除)。以下是答案,我认为Mozilla非标准getAsDataURL函数尚未被接受(也将从firefox中删除).我添加了原始代码中没有的jQuery文档就绪事件处理我添加了原始代码中没有的jQuery文档就绪事件处理