代码: ie8 提示未指明的错误
<script type="text/javascript" language="javascript">
<!--
function PreviewImg(imgFile){
var newPreview = document.getElementById("newPreview");
var imgDiv = document.createElement("div");
document.body.appendChild(imgDiv);
imgDiv.style.width = "118px"; imgDiv.style.height = "127px";
imgDiv.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod = scale)";
imgDiv.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgFile.value; 错误指向这个地方
newPreview.appendChild(imgDiv);
var showPicUrl = document.getElementById("showPicUrl");
showPicUrl.innerText=imgFile.value;
newPreview.style.width = "80px";
newPreview.style.height = "60px";
}
-->
</script> <div id="newPreview"></div>
<div id="showPicUrl"></div>
<hr />
<p>
选择图片:<input type="file" size="20" onchange="javascript:PreviewImg(this);" />
</p> 请大侠指教
参考一下
1.选择完 文件后,文件控件上可能会显示c:/fakepath/文件名。这样会使你的imgSrc取不到正确的path
2.由于没有设置受信任的站点,所以滤镜无法显示。这两点都必须手动改客户端。(你可以百度下如何设置)所以让IE8在做这个效果的时候无解。
除了IE8下,还有chrome也是一样。无法取得文件的真实path
改成
imgDiv.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = "file:///"+imgFile.value;