JS获取本地文件绝对路径-预览本地图片


通过file input框显示本地文件的绝对路径,在网上找了很久,一直只有IE和Firefox的实现,没有谷歌。

这里有个解决方案,可以显示本地图片,但是读不到绝对路径。

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>3</title>
<script>
function getFullPath(obj) {
    if (obj) {
        //Internet Explorer 
        if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
            obj.select();
            return document.selection.createRange().text;
        } 
        //Firefox
        if (window.navigator.userAgent.indexOf("Firefox") >= 1) {
            if (obj.files) {
                return obj.files.item(0).getAsDataURL();
            }
            return obj.value;
        } 

        //兼容chrome、火狐等,HTML5获取路径       
        if (typeof FileReader != "undefined") {
            var reader = new FileReader();
            reader.onload = function(e) {
                document.getElementById("pic").src = e.target.result + ""; 
            }
            reader.readAsDataURL(obj.files[0]);
        } else if (browserVersion.indexOf("SAFARI") > -1) {
            alert("暂时不支持Safari浏览器!");
        }

    } 
}

function showPic(obj) {
    var fullPath = getFullPath(obj);
    if (fullPath) {
        document.getElementById("pic").src = fullPath + "";
    }
}
</script>
</head>
<body>
    <input type="file" οnchange="showPic(this)">
    <img src="" id="pic">
</body>
</html>


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值