jquery 上传图片即时预览功能
<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 上传图片即时预览功能的更多相关文章
- js上传图片及预览功能
详细内容请点击 参考了网上一些人代码写了一个上传图片及时预览的功能 <img id="imgTag" style="height: 100px;" alt ...
- nodejs实现本地上传图片并预览功能(express4.0+)
Express为:4.13.1 multyparty: 4.1.2 代码主要实现本地图片上传到nodejs服务器的文件下,通过取图片路径进行图片预览 写在前面:计划实现图片上传预览功能,但是本地图片 ...
- js实现上传图片本地预览功能以及限制图片的文件大小和尺寸大小
方法一: js: /** * 上传图片本地预览方法 * @param {Object} fileObj 上传文件file的id元素 fresh-fileToUpload * ...
- html上传图片的预览功能实现
表单代码(仅取上传文件部分): <input class="selectImg" style="position:absolute;opacity: 0;width ...
- 上传图片带预览功能兼容IE和火狐等主流浏览器
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- URL.createObjectURL() 实现本地上传图片 并预览功能
URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的URL.这个 URL 的生命周期和创建它的窗口中的 document 绑定.这个新 ...
- JS兼容各个浏览器的本地图片上传即时预览效果
JS兼容各个浏览器的本地图片上传即时预览效果 很早以前 在工作曾经碰到这么一个需求,当时也是纠结了很久,也是google了很久,没有碰到合适的demo,今天特意研究了下这方面的的问题,所以也就做了个简 ...
- PHP jQuery实现上传图片时预览图片的功能实例
在PHP项目开发中,有时候经常需要做添加图片的功能.添加图片时,一般需要即时预览上传的图片.下面这个例子就是简单的预览上传图片功能,代码如下(分两部分): 1.HTML代码: <div clas ...
- HTML5上传图片预览功能
HTML5上传图片预览功能 HTML代码如下: <!-- date: 2018-04-27 14:41:35 author: 王召波 descride: HTML5上传图片预览功能 --> ...
随机推荐
- fopen()和fclose()的用法
fopen()和fclose()的用法 1.fopen()函数的用法 fopen函数用于打开文件, 其调用格式为: FILE *fopen(char *filename, *type); fopen( ...
- SVN使用教程总结[转]
SVN使用教程总结 SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Sub ...
- unslider的用法详解
unslider本身下载后只需要dist文件夹就好了, 其中只包含dist/js/unslider-min.js, jquery的js要自己提供; dist/css/unslider.css是主要的c ...
- ggplo2学习笔记——基本图形类型
1.散点图:又称散点分布图,是以一个变量为恨坐标,另一个变量为纵坐标,利用散点(坐标点)的分布形态反映变量统计关系的一种图形.可以用来确认两个变量之间的关系.绘制自由曲线.矩阵关联分析等. 2.条形图 ...
- 如何一次把所有wordpress插件都禁用了
wordpress网站出现了问题,或者在更新一些数据的时候,需要先把插件全部都禁用了进行检查.那么如何一次把所有wordpress插件都禁用呢?试试下面的sql语句吧 UPDATE wp_option ...
- loadrunner-27796错误寻求解决办法
Action.c(58): Error -27796: Failed to connect to server "www.baidu.com:80": [10048] Addres ...
- 高性能滚动 scroll 及页面渲染优化
最近在研究页面渲染及web动画的性能问题,以及拜读<CSS SECRET>(CSS揭秘)这本大作. 本文主要想谈谈页面优化之滚动优化. 主要内容包括了为何需要优化滚动事件,滚动与页面渲染的 ...
- Codeforces Round #335 Sorting Railway Cars 动态规划
题目链接: http://www.codeforces.com/contest/606/problem/C 一道dp问题,我们可以考虑什么情况下移动,才能移动最少.很明显,除去需要移动的车,剩下的车, ...
- Linux资源站
1.<鸟哥的linux私房菜>中提供的台湾高速网络中心ftp站:http://ftp.twaren.net/Linux/CentOS/5/
- NOSQL的学习
NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL",指的是非关系型的数据库.NoSQL用于超大规模数据的存储.(例如谷歌或Facebook每天为他们的 ...