img标签无法显示本地图片

meng_linxi 2015-06-12 09:36:59
html代码:
<td width="18%" id="">
<input type="file" style="width:200px;" id='PictureFile' name='PictureFile' onchange="showPicture('PictureFile','imgPre')"/>
<img src="" id="imgPre" width="100px" height="100px" style="display: block"/>
</td>


js代码:
//将本地图片 显示到浏览器上
function showPicture(sourceId, targetId) {
var url = getFileUrl(sourceId);
var imgPre = document.getElementById(targetId);
imgPre.setAttribute("src", url);
}
//从 file 域获取 本地图片 url
function getFileUrl(sourceId) {
var url='';
if (navigator.userAgent.indexOf("MSIE") >= 1) { // IE
url = document.getElementById(sourceId).value;
} else if (navigator.userAgent.indexOf("Firefox") > 0) { // Firefox
url = window.URL.createObjectURL(document.getElementById(sourceId).files.item(0));
} else if (navigator.userAgent.indexOf("Chrome") > 0) { // Chrome
url = window.URL.createObjectURL(document.getElementById(sourceId).files.item(0));
}
return url;
}

我用这个方法试过,标签img的src属性能得到路径(如:C:\Users\Linxi\Desktop\b.png,我也确定桌面有这张图片),但是页面上就是显示不出来这张图片,也没有报任何错,还有图片的各种格式我也试过不行(如jpg,jpeg),但是我把这个路径C:\Users\Linxi\Desktop\b.png放在浏览器中就能够显示,这是为什么?是不是路径的问题还是浏览器的问题?
...全文
6841 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
eiffelmen 2017-08-10
  • 打赏
  • 举报
回复
我想问下楼主这个问题解决了吗
meng_linxi 2015-06-12
  • 打赏
  • 举报
回复
引用 2 楼 bbjiabcd 的回复:
每个浏览器不一样的,IE Chrome支持类似C:\Users\Linxi\Desktop\b.png的本地文件路径,而Firefox只支持file:///C:/Users/Linxi/Desktop/b.png这样的文件路径,且这样的路径大多数浏览器都支持,建议都改成这样的。
我之前也试过用file:///C:/Users/Linxi/Desktop/b.png这样的路径,但是也不行,如果把这样的路径直接复制在浏览器中,是可以的,但是当我复制在img标签的src属性下,它就无法显示了,不知为什么。
bbjiabcd 2015-06-12
  • 打赏
  • 举报
回复 1
每个浏览器不一样的,IE Chrome支持类似C:\Users\Linxi\Desktop\b.png的本地文件路径,而Firefox只支持file:///C:/Users/Linxi/Desktop/b.png这样的文件路径,且这样的路径大多数浏览器都支持,建议都改成这样的。
meng_linxi 2015-06-12
  • 打赏
  • 举报
回复
希望有人能来解决呀~~

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧