JS上传前预览图片实例


Posted in Javascript onMarch 25, 2013

预览图片的js代码:

<script type="text/javascript">
        function setImagePreview(docObj,localImagId,imgObjPreview) 
        {
            if(docObj.files && docObj.files[0])
            {
                //火狐下,直接设img属性
                imgObjPreview.style.display = 'block';
                imgObjPreview.style.width = '300px';
                imgObjPreview.style.height = '200px';                    

                //火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式  
                imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]);
            }
            else
            {
                //IE下,使用滤镜
                docObj.select();
                var imgSrc = document.selection.createRange().text;
                //必须设置初始大小
                localImagId.style.width = "300px";
                localImagId.style.height = "200px";
                //图片异常的捕捉,防止用户修改后缀来伪造图片
                try
                {
                    localImagId.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
                    localImagId.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;
                 }
                 catch(e)
                 {
                    alert("您上传的图片格式不正确,请重新选择!");
                    return false;
                  }                          
                  imgObjPreview.style.display = 'none';
                  document.selection.empty();
            }
            return true;
        }
</script>

fileupload控件及用来预览图片的image:

<div id="localImag"  style="width: 300px; height: 200px">
   <img id="preview" alt="预览图片" src="https://3water.com/images/logo.gif" width="300px" height="200px" />
</div>
   <asp:FileUpload ID="PicLoad" Width="300px" runat="server" onchange="javascript:setImagePreview(this,localImag,preview);">
   </asp:FileUpload>
  

功能很简单,代码也很易懂,相信不用我多废话大家也能看懂吧。感觉写这样的文章,真的没啥好说的,不多说,还是把重点放在代码上吧。
Javascript 相关文章推荐
jQuery 跨域访问问题解决方法
Dec 02 Javascript
javaScript实现浮点数转十六进制字符
Oct 29 Javascript
JavaScript闭包函数访问外部变量的方法
Aug 27 Javascript
jQuery选择器源码解读(三):tokenize方法
Mar 31 Javascript
jquery 重写 ajax提交并判断权限后 使用load方法报错解决方法
Jan 19 Javascript
实现高性能JavaScript之执行与加载
Jan 30 Javascript
详解jQuery中的deferred对象的使用(一)
May 27 Javascript
BootStrap Validator 版本差异问题导致的submitHandler失效问题的解决方法
Dec 01 Javascript
jquery拼接ajax 的json和字符串拼接的方法
Mar 11 Javascript
vue-router+nginx 非根路径配置方法
Jun 30 Javascript
Vue中Quill富文本编辑器的使用教程
Sep 21 Javascript
vue实现简单全选和反选功能
Sep 15 Javascript
js实现杯子倒水问题自动求解程序
Mar 25 #Javascript
js实现上传图片之上传前预览图片
Mar 25 #Javascript
使用jQuery validate 验证注册表单实例演示
Mar 25 #Javascript
多个表单中如何获得这个文件上传的网址实现js代码
Mar 25 #Javascript
jquery中使用$(#form).submit()重写提交表单无效原因分析及解决
Mar 25 #Javascript
博客侧边栏模块跟随滚动条滑动固定效果的实现方法(js+jquery等)
Mar 24 #Javascript
js 字符串转换成数字的三种方法
Mar 23 #Javascript
You might like
php的urlencode()URL编码函数浅析
2011/08/09 PHP
PHP Global定义全局变量使用说明
2013/08/15 PHP
zend optimizer在wamp的基础上安装图文教程
2013/10/26 PHP
深入浅出讲解:php的socket通信原理
2016/12/03 PHP
javascript下有关dom以及xml节点访问兼容问题
2007/11/26 Javascript
Javascript UrlDecode函数代码
2010/01/09 Javascript
Ext中下拉列表ComboBox组件store数据格式用法介绍
2013/07/15 Javascript
js之onload事件的一点使用心得
2013/08/14 Javascript
JS对img标签进行优化使用onerror显示默认图像
2014/04/24 Javascript
JavaScript中的数值范围介绍
2014/12/29 Javascript
js鼠标悬浮出现遮罩层的方法
2015/01/28 Javascript
JavaScript从数组的indexOf()深入之Object的Property机制
2016/05/11 Javascript
jQuery简单倒计时效果完整示例
2016/09/20 Javascript
基于bootstrap-datetimepicker.js不支持IE8的快速解决方法
2016/11/07 Javascript
form+iframe解决跨域上传文件的方法
2016/11/18 Javascript
vue-router:嵌套路由的使用方法
2017/02/21 Javascript
seaJs使用心得之exports与module.exports的区别实例分析
2017/10/13 Javascript
@angular前端项目代码优化之构建Api Tree的方法
2018/12/24 Javascript
Vue实现日历小插件
2019/06/26 Javascript
vue 组件内获取actions的response方式
2019/11/08 Javascript
Vue实现简易计算器
2020/02/25 Javascript
vue router-link 默认a标签去除下划线的实现
2020/11/06 Javascript
解决vant框架做H5时踩过的坑(下拉刷新、上拉加载等)
2020/11/11 Javascript
[01:43]3.19DOTA2发布会 三代刀塔人第三代
2014/03/25 DOTA
Python 中开发pattern的string模板(template) 实例详解
2017/04/01 Python
Python OOP类中的几种函数或方法总结
2019/02/22 Python
Python CSV文件模块的使用案例分析
2019/12/21 Python
Pyecharts 动态地图 geo()和map()的安装与用法详解
2020/03/25 Python
使用Django xadmin 实现修改时间选择器为不可输入状态
2020/03/30 Python
澳大利亚领先的运动鞋商店:Hype DC
2018/03/31 全球购物
美国在线纱线商店:Darn Good Yarn
2019/03/20 全球购物
关于Assembly命名空间的三个面试题
2015/07/23 面试题
大学生个人简历自我评价
2013/11/16 职场文书
数控技校生自我鉴定
2014/04/19 职场文书
法定代表人授权委托书
2014/09/19 职场文书
Vue2项目中对百度地图的封装使用详解
2022/06/16 Vue.js