<script type="text/javascript">
        jQuery.fn.extend({
            uploadPreview: function (opts) {
                var _self = this, _this = $(this);
                opts = jQuery.extend({
                    Img: "Image1",
                    Width: 100,
                    Height: 100,
                    ImgType: ["gif", "jpeg", "jpg", "bmp", "png"],
                    Callback: function () { }
                }, opts || {});
                _self.getObjectURL = function (file) {
                    var url = null;
                    if (window.createObjectURL != undefined) {
                        url = window.createObjectURL(file);
                    } else if (window.URL != undefined) {
                        url = window.URL.createObjectURL(file);
                    } else if (window.webkitURL != undefined) {
                        url = window.webkitURL.createObjectURL(file);
                    }
                    return url;
                }
                _this.change(function () {
                    if (this.value) {
                        if (!RegExp("\.(" + opts.ImgType.join("|") + ")$", "i").test(this.value.toLowerCase())) {
                            alert("选择文件错误,图片类型必须是" + opts.ImgType.join(",") + "中的一种");
                            this.value = "";
                            return false;
                        }
                        if (navigator.userAgent.indexOf("MSIE") > -1) {
                            try {
                                $("#" + opts.Img).attr('src', _self.getObjectURL(this.files[0]));
                            } catch (e) {
                                var src = "";
                                var obj = $("#" + opts.Img);
                                var div = obj.parent("div")[0];
                                _self.select();
                                if (top != self) {
                                    window.parent.document.body.focus();
                                } else {
                                    _self.blur();
                                }
                                src = document.selection.createRange().text;
                                document.selection.empty();
                                obj.hide();
                                obj.parent("div").css({
                                    'filter': 'progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)',
                                    'width': opts.Width + 'px',
                                    'height': opts.Height + 'px'
                                });
                                div.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = src;
                            }
                        } else {
                            $("#" + opts.Img).attr('src', _self.getObjectURL(this.files[0]));
                        }
                        opts.Callback();
                    }
                });
            }
        });
    </script>
    <script type="text/javascript">
        $(function () {
//            $("#up").uploadPreview({ Img: "ImgPr", Width: 120, Height: 120 });
            $("#<%=FileUpload1.ClientID%>").uploadPreview({ Img: "Img1", Width: 120, Height: 120 });
            $("#<%=photopath.ClientID%>").uploadPreview({ Img: "Image1", Width: 120, Height: 120 });
        });
    </script>

--以下是获取客户端上传文件的名称

<script type="text/javascript">         function checkType() {             //得到上传文件的值

var fileName1 = document.getElementById("FileUpload1").value;             var fileName2 = document.getElementById("FileUpload2").value;             if (fileName1 = document.getElementById("FileUpload1").value) {

//返回String对象中子字符串最后出现的位置.                   var seat = fileName1.lastIndexOf(".");

//返回位于String对象中指定位置的子字符串并转换为小写.                   var extension = fileName1.substring(seat).toLowerCase();

//判断允许上传的文件格式                   //if(extension!=".jpg"&&extension!=".jpeg"&&extension!=".gif"&&extension!=".png"&&extension!=".bmp"){                   //alert("不支持"+extension+"文件的上传!");                   //return false;                   //}else{                   //return true;                   //}   //                //                var allowed = [".jpg", ".gif", ".png", ".bmp", ".jpeg", ".swf", ".flv", ".wmv", ".mp3", ".mp4", ".avi", ".rmvb",".rar",".png",".tga"]; //                for (var i = 0; i < allowed.length; i++) { //                    if (!(allowed[i] != extension)) { //                        return true; //                    } //                } //                alert("不支持" + extension + "格式"); //                return false;             }             else if(fileName2 = document.getElementById("FileUpload2").value)             {                 var seat1 = fileName2.lastIndexOf(".");                 //返回位于String对象中指定位置的子字符串并转换为小写.                   var extension = fileName2.substring(seat1).toLowerCase();

//判断允许上传的文件格式                   //if(extension!=".jpg"&&extension!=".jpeg"&&extension!=".gif"&&extension!=".png"&&extension!=".bmp"){                   //alert("不支持"+extension+"文件的上传!");                   //return false;                   //}else{                   //return true;                   //}

var allowed = [".jpg", ".gif", ".png", ".bmp", ".jpeg", ".swf", ".flv", ".wmv", ".mp3", ".mp4", ".avi", ".rmvb", ".rar", ".png", ".tga"];                 for (var i = 0; i < allowed.length; i++) {                     if (!(allowed[i] != extension)) {                         return true;                     }                 }                 alert("不支持" + extension + "格式");                 return false;             }

}      </script>

jquery 上传图片即时预览功能的更多相关文章

  1. js上传图片及预览功能

    详细内容请点击 参考了网上一些人代码写了一个上传图片及时预览的功能 <img id="imgTag" style="height: 100px;" alt ...

  2. nodejs实现本地上传图片并预览功能(express4.0+)

    Express为:4.13.1  multyparty: 4.1.2 代码主要实现本地图片上传到nodejs服务器的文件下,通过取图片路径进行图片预览 写在前面:计划实现图片上传预览功能,但是本地图片 ...

  3. js实现上传图片本地预览功能以及限制图片的文件大小和尺寸大小

    方法一: js: /**     * 上传图片本地预览方法     * @param {Object} fileObj 上传文件file的id元素  fresh-fileToUpload      * ...

  4. html上传图片的预览功能实现

    表单代码(仅取上传文件部分): <input class="selectImg" style="position:absolute;opacity: 0;width ...

  5. 上传图片带预览功能兼容IE和火狐等主流浏览器

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. URL.createObjectURL() 实现本地上传图片 并预览功能

    URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL.这个 URL 的生命周期和创建它的窗口中的 document 绑定.这个新 ...

  7. JS兼容各个浏览器的本地图片上传即时预览效果

    JS兼容各个浏览器的本地图片上传即时预览效果 很早以前 在工作曾经碰到这么一个需求,当时也是纠结了很久,也是google了很久,没有碰到合适的demo,今天特意研究了下这方面的的问题,所以也就做了个简 ...

  8. PHP jQuery实现上传图片时预览图片的功能实例

    在PHP项目开发中,有时候经常需要做添加图片的功能.添加图片时,一般需要即时预览上传的图片.下面这个例子就是简单的预览上传图片功能,代码如下(分两部分): 1.HTML代码: <div clas ...

  9. HTML5上传图片预览功能

    HTML5上传图片预览功能 HTML代码如下: <!-- date: 2018-04-27 14:41:35 author: 王召波 descride: HTML5上传图片预览功能 --> ...

随机推荐

  1. start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart:

    用Ubuntu远程登录虚拟host时出现:    start: Unable to connect to Upstart: Failed to connect to socket /com/ubunt ...

  2. R语言学习笔记

    向量化的函数 向量化的函数 ifelse/which/where/any/all/cumsum/cumprod/对于矩阵而言,可以使用rowSums/colSums.对于“穷举所有组合问题" ...

  3. JavaScript-也来谈--闭包

    闭包,以前研究过,可能是当初理解的不够透彻,现在又忘了,(给自己一个台阶下`-...)毕竟js一直没怎么用, 为了防止自己过段时间再忘了,写篇重要的闭包重点, 这样时不时也能温习下知识,不用每次想了解 ...

  4. 自动去除nil的NSDictionary和NSArray构造方法

    http://www.jianshu.com/p/a1e8d8d579c7 极分享 http://www.finalshares.com/

  5. javascript string 函数集

    JavaScript_String对象说明 string中文为"字符串"的意思,String继承自Object对象,此对象提供字符串的查找操作等函数 JavaScript字符串类型 ...

  6. 必须知道的.net(字段、属性和方法)

    1.字段 通常定义为private(封装原则) 2.属性(property) 通常定义为public,表示类的对外成员.具有可读可写属性,通过get和set访问器实现 3.索引器(indexer) C ...

  7. jQuery Colorbox插件

    http://www.open-open.com/lib/view/open1338084606042.html jQuery Colorbox是一款非常好的内容播放插件.它集弹出层.幻灯片播放功能于 ...

  8. C++ 零碎知识点

    C++的一些知识点比较零碎,下面清单的形式做一些记录与归纳,以供参考. 1.赋值操作符重载(深复制): (1)由于目标对象可能引用了以前的一些数据,所以应该先delete这些数据: (2)注意到对象可 ...

  9. IntelliJ中的main函数和System.out.println()快捷键

    1.在IntelJ中和Eclipse中稍有不同,在Eclipse中,输入main再按Alt+/即可自动补全main函数,但是在IntellJ中则是输入psvm,选中即可 2.在方法体内部有for循环, ...

  10. HDU 3535 分组混合背包

    http://acm.hdu.edu.cn/showproblem.php?pid=3535 题意:有n组工作,T时间,每个工作组中有m个工作,改组分类是s,s是0是组内至少要做一件,是1时最多做一件 ...