<img id="ad_url_img" width=-1 height=-1 style="display: none" />
<input type="file" name="ad_url" id="ad_url" value="" onchange="javascript:setImagePreview('ad_url','ad_url_img');"/>
<script>
function setImagePreview(doc,img) {
var docObj = document.getElementById(doc);
var imgObjPreview = document.getElementById(img);
if (docObj.files && docObj.files[0]) {
/*火狐下,直接设img属性*/
imgObjPreview.style.display = 'inline-block';
imgObjPreview.style.width = '150px';
imgObjPreview.style.height = '120px';
/*imgObjPreview.src = docObj.files[0].getAsDataURL();*/
/*火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式*/
imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]);
} else {
/*IE下,使用滤镜*/
docObj.select();
var imgSrc = document.selection.createRange().text;
var localImagId = document.getElementById("localImag");
/*必须设置初始大小*/
localImagId.style.width = "150px";
localImagId.style.height = "120px";
/*图片异常的捕捉,防止用户修改后缀来伪造图片*/
try {
localImagId.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)"; localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
} catch (e) {
alert("您上传的图片格式不正确,请重新选择!");
return false;
}
imgObjPreview.style.display = 'none';
document.selection.empty();
}
return true;
}
</script>JS实现图片上传后自动显示
最新推荐文章于 2022-05-17 15:23:21 发布
本文介绍了一种在网页中实现文件上传后即时预览图片的方法。该方法通过JavaScript实现了跨浏览器兼容,支持现代浏览器的File API及IE等旧版浏览器的ActiveX技术,确保了图片预览功能的广泛适用。
968

被折叠的 条评论
为什么被折叠?



