js实现图片预览

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>图片预览</title>
<script type="text/javascript">
//图片上传预览    IE是用了滤镜。
function previewImage(file) {
var div = document.getElementById('previmage');
var oldimg = div.firstChild;
var w = oldimg.style.width;
var h = oldimg.style.height;
// console.log(w + ',' + h);
if (file.files && file.files[0]) {
div.innerHTML = "";
var img = document.createElement("img");
img.style.width = w;
img.style.height = h;
div.appendChild(img);
img.src = window.URL.createObjectURL(file.files[0]);
} else //兼容IE
{
file.select();
file.blur();
var imgSrc = document.selection.createRange().text;
//必须设置初始大小
div.style.width = w;
div.style.height = h;
//图片异常的捕捉,防止用户修改后缀来伪造图片
div.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
div.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
oldimg.style.display = "none";
document.selection.empty();
}
}
</script>
</head>


<body>
<p>By xxzkid</p>
<!-- 图片预览 -->
<div>
<input type="file" οnchange="previewImage(this);" />
<div id="previmage"><img src="" style="width: 200px; height: 200px;" /></div>
</div>
<!-- PS:#previmage > img 的width and height 一定要写在标签上,用class 或者id 选择器写的样式,在js中无法获取 -->
</body>
</html>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值