zoukankan      html  css  js  c++  java
  • js实现图片上传及预览---------------------->>兼容ie6-8 火狐以及谷歌

      

    <head runat="server">
        <title>图片上传及预览(兼容ie6/7/8 firefox/chrome)</title>
        <script src="../Scripts/jquery-1.4.2.min.js" type="text/javascript"></script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <div>
                <asp:FileUpload ID="fileAppImg" runat="server" Style="font-size: 13px;" onchange="previewImage(this,'preview','appImg')" /></div>
            <div id="preview" style="margin-top: 10px;">
                <img id="appImg" src="../SourceImg/ContentPage/AccountAuth/zjyl.jpg" alt="" style="margin-left: 1px;
                    height: 214px;  160px;" />
            </div>
        </div>
        </form>
    </body>
    </html>
    <%--图片上传预览--%>
    <script type="text/javascript">
        //图片上传预览
        function previewImage(file, div, img) {
            MAXWIDTH = 160;
            MAXHEIGHT = 214;
            var div = document.getElementById(div);
            if (file.files && file.files[0]) {
                //验证图片大小
                var imgType = /.[^.]+$/.exec(file.value);
                if (imgType != ".jpg" && imgType != ".png") {
                    alert("仅支持jpg和png两种格式的图片");
                    file.value = "";
                    $("#txtShowIcon").val("未选中文件");
                    return;
                }
                div.innerHTML = "<img id='" + img + "'>";
                var img = document.getElementById(img);
                img.onload = function () {
                    var rect = clacImgZoomParam(MAXWIDTH, MAXHEIGHT, img.offsetWidth, img.offsetHeight);
                    img.width = rect.width;
                    img.height = rect.height;
                    img.style.marginLeft = rect.left + 'px';
                    img.style.marginTop = rect.top + 'px';
                }
                var reader = new FileReader();
                reader.onload = function (evt) { img.src = evt.target.result; }
                reader.readAsDataURL(file.files[0]);
            }
            else {
                //验证图片大小
                var imgType = /.[^.]+$/.exec(file.value);
                if (imgType != ".jpg" && imgType != ".png") {
                    alert("仅支持jpg和png两种格式的图片");
                    return;
                }
                var filePath = file.value;
                //IE浏览器
                var sFilter = 'filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale,src="';
                file.select();
                var src = document.selection.createRange().text;
                div.innerHTML = '<img id="' + img + '">';
                var img = document.getElementById(img);
                //img.filters.item('DXImageTransform.Microsoft.AlphaImageLoader').src = src;
                var rect = clacImgZoomParam(MAXWIDTH, MAXHEIGHT, img.offsetWidth, img.offsetHeight);
                status = ('rect:' + rect.top + ',' + rect.left + ',' + rect.width + ',' + rect.height);
                div.innerHTML = "<div id='divhead' style='" + rect.width + "px;height:" + rect.height + "px;margin-top:" + rect.top + "px;margin-left:" + rect.left + "px;" + sFilter + src + ""'></div>";
            }
        }
        function clacImgZoomParam(maxWidth, maxHeight, width, height) {
            var param = { top: 0, left: 0,  width, height: height };
            param.width = maxWidth;
            param.height = maxHeight;
            param.left = 0;
            param.top = 0;
            return param;
        }
    </script>
  • 相关阅读:
    九大经典算法之插入排序、希尔排序
    1072 开学寄语 (20 分)
    1070 结绳 (25 分
    查找字符串中的所有数字
    通过类继承计算梯形面积
    将命令的输出生成一个Web页面
    从Internet下载一个文件
    使用Excel管理命令输出
    将一个命令的输出保存到CSV文件
    使用属性存储用户编号和姓名
  • 原文地址:https://www.cnblogs.com/DBtwoer/p/4095475.html
Copyright © 2011-2022 走看看