zoukankan      html  css  js  c++  java
  • 通过createObjectURL实现图片预览

    实现原理:通过createObjectURL 创建一个临时指向某地址的二进制对象。

    过程:点击触发隐藏的 input   file  的点击事件,使用createObjectURL读取 file,创建一个Jquery 图片对象,url等于二进制对象。

    前端代码:

    js:  
            $(function () {
                 $('[type=file]').change(function (e) {
                    var file = e.target.files[0]
                    preview(file, this);
                })
            });

        

       //添加图片触发隐藏的  file input
                function upLoadImage(obj) {
                    return $(obj).next().click();
                }



                //预览文件图片
                function preview(file, obj) {
                    //浏览器缓存一张图片
                    var img = new Image(), url = img.src = URL.createObjectURL(file);
                    var $img = $(img);
                    img.onload = function () {
                        URL.revokeObjectURL(url)

                        var $parentBox = $(obj).parent().find(".imgBox");
                        alert(0);
                        $parentBox.html("");

                        $parentBox.css("width", "64");
                        $parentBox.css("height", "64");
                        $parentBox.append($img)
                        //$('#preview').empty().append($img)
                    }
                }

     //删除


                function deleteimg(obj) {
                    var objectBox = $(obj).parent().find(".imgBox");
                    var file = $(obj).parent().find(".fileData");
                    $(file).val('');
                    objectBox.html("<img src='../../images/upload.png'>");
                }

    html:

       <td>
                                  <div class="upload-img" style="float: left; margin-right: 25px">
                                                <a href="javascript:void(0);" onclick="upLoadImage(this)" class="upload-hotel-a">
                                                    <div class="imgBox">
                                                        <img src="../../images/upload.png">
                                                    </div>
                                                </a>
                                                <input type="file" style="display: none" />
                                                <br />
                                                <a onclick="deleteimg(this)" class="button icon trash DeleteTd">删除</a>
                                                <input type="hidden" value="">
                                    </div>
                </td>

  • 相关阅读:
    ME05 黑匣子思维
    F06 《生活中的投资学》摘要(完)
    ME03 关于运气要知道的几个真相
    ME02 做一个合格的父母To be good enough parent
    ME02 认知之2017罗胖跨年演讲
    F03 金融学第三定律 风险共担
    F05 敏锐的生活,让跟多公司给你免单
    ML04 Accord 调用实现机器算法的套路
    D02 TED Elon Mulsk The future we're building — and boring
    ML03 利用Accord 进行机器学习的第一个小例子
  • 原文地址:https://www.cnblogs.com/j2ee-web-01/p/7516323.html
Copyright © 2011-2022 走看看