无刷新预览所选择的图片示例代码


Posted in Javascript onApril 02, 2014

代码如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>无标题文档</title> 
<script type="text/javascript"> 
//本地图片预览 
function setImagePreview(fieldupload, image, imagediv) { 
var docObj = document.getElementById(fieldupload); 
var imgObjPreview = document.getElementById(image); 
if (docObj.files && docObj.files[0]) { 
//火狐下,直接设img属性 
imgObjPreview.style.display = 'block'; 
imgObjPreview.style.width = '150px'; 
imgObjPreview.style.height = '150px'; 
//imgObjPreview.src = docObj.files[0].getAsDataURL(); 
//火狐7以上版本不能用上面的getAsDataURL()方式获取,需要一下方式 
imgObjPreview.src = window.URL.createObjectURL(docObj.files[0]); 
} else { 
//IE下,使用滤镜 
docObj.select(); 
var imgSrc = document.selection.createRange().text; 
var localImagId = document.getElementById(imagediv); 
//必须设置初始大小 
localImagId.style.width = "150px"; 
localImagId.style.height = "150px"; 
//图片异常的捕捉,防止用户修改后缀来伪造图片 
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> 
</head> <body> 
<div id="localImag"> <img id="preview" width="150px" height="150px" src="http://images.cnblogs.com/cnblogs_com/yc-755909659/559257/o_%e6%9a%82%e6%97%a0%e5%9b%be%e7%89%87.gif" alt="" /></div> 
<div> 
<input type="file" onchange="javascript:setImagePreview('upload','preview','localImag');" id="upload" /> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
用jQuery扩展自写的 UI导航
Jan 13 Javascript
Ext JS 4实现带week(星期)的日期选择控件(实战二)
Aug 21 Javascript
js 设置缓存及获取设置的缓存
May 08 Javascript
JS获取客户端IP地址、MAC和主机名的7个方法汇总
Jul 21 Javascript
javascript作用域问题实例分析
Jul 13 Javascript
基于Node.js的JavaScript项目构建工具gulp的使用教程
May 20 Javascript
xmlplus组件设计系列之路由(ViewStack)(7)
May 02 Javascript
jQuery选择器特殊字符与属性空格问题
Aug 14 jQuery
JavaScript 复制对象与Object.assign方法无法实现深复制
Nov 02 Javascript
Vue项目vscode 安装eslint插件的方法(代码自动修复)
Apr 15 Javascript
如何利用Node.js与JSON搭建简单的动态服务器
Jun 16 Javascript
Element Steps步骤条的使用方法
Jul 26 Javascript
jQuery防止click双击多次提交及传递动态函数或多参数
Apr 02 #Javascript
jquery跟js初始化加载的多种方法及区别介绍
Apr 02 #Javascript
jquery中子元素和后代元素的区别示例介绍
Apr 02 #Javascript
js 日期比较相关天数代码
Apr 02 #Javascript
你未必知道的JavaScript和CSS交互的5种方法
Apr 02 #Javascript
网页广告中JS代码的信息监听示例
Apr 02 #Javascript
使用jquery中height()方法获取各种高度大全
Apr 02 #Javascript
You might like
兼容PHP5的PHP目录管理函数库
2008/07/10 PHP
php实现登录tplink WR882N获取IP和重启的方法
2016/07/20 PHP
php Session无效分析资料整理
2016/11/29 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
张孝祥JavaScript学习阶段性总结(2)--(X)HTML学习
2007/02/03 Javascript
用javascript实现画板的代码
2007/09/05 Javascript
jQuery中使用了document和window哪些属性和方法小结
2011/09/13 Javascript
jQuery 判断图片是否加载完成方法汇总
2015/08/10 Javascript
轻松学习jQuery插件EasyUI EasyUI创建RSS Feed阅读器
2015/11/30 Javascript
JavaScript正则表达式匹配 div  style标签
2016/03/15 Javascript
artDialog+plupload实现多文件上传
2016/07/19 Javascript
Vuejs第七篇之Vuejs过渡动画案例全面解析
2016/09/05 Javascript
JavaScript实现三级联动效果
2017/07/15 Javascript
浅谈Vue SPA 首屏加载优化实践
2017/12/15 Javascript
JS合并两个数组的3种方法详解
2019/10/24 Javascript
详解Nuxt.js 实战集锦
2019/11/19 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
[01:01]青春无憾,一战成名——DOTA2全国高校联赛开启
2018/02/25 DOTA
Python实现包含min函数的栈
2016/04/29 Python
python实现kMeans算法
2017/12/21 Python
Python数据分析:手把手教你用Pandas生成可视化图表的教程
2018/12/15 Python
Python 通过requests实现腾讯新闻抓取爬虫的方法
2019/02/22 Python
使用python实现名片管理系统
2020/06/18 Python
keras中的History对象用法
2020/06/19 Python
在pycharm创建scrapy项目的实现步骤
2020/12/01 Python
python上下文管理的使用场景实例讲解
2021/03/03 Python
全球领先的各类汽车配件零售商:Advance Auto Parts
2016/08/26 全球购物
Audible英国:有声读物,30天免费试用
2019/10/16 全球购物
将时尚融入珠宝:Adornmonde
2019/10/17 全球购物
英国电信商店:BT Shop
2019/12/17 全球购物
database面试题
2013/03/28 面试题
Internet主要有哪些网络群组成
2015/12/24 面试题
幼儿园大班教师个人总结
2015/02/05 职场文书
机器人瓦力观后感
2015/06/12 职场文书
2019年度开业庆典祝福语大全!
2019/07/05 职场文书
SpringBoot集成Druid连接池连接MySQL8.0.11
2021/07/02 Java/Android