javascript实现上传图片并预览的效果实现代码


Posted in Javascript onApril 11, 2011

今天用alphaimageloader滤镜的src属就是其中的主角它将使用绝对或相对url地址指定背景图像。假如忽略此参数,滤镜将不会作用。

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> 
<html xmlns="http://www.3ppt.com /"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=gb2312" /> 
<title></title> 
<style type="text/css教程"> 
#picshow 
{ 
filter:progid:dximagetransform.microsoft.alphaimageloader(sizingmethod=scale); 
width:88px; 
height:125px; 
} 
</style> 
<script type="text/网页特效" language="javascript"> 
<!-- 
function upimg(imgfile) 
{ 
var picshow = document.getelementbyid("picshow"); 
picshow.filters.item("dximagetransform.microsoft.alphaimageloader").src = imgfile.value; 
picshow.style.width = "88px"; 
picshow.style.height = "125px"; 
} 
--> 
</script> 
</head> 
<body> 
<div id="picshow"></div> 
<p>选择图片:<input type="file" size="20" onchange="upimg(this);" /></p> 
</body> 
</html>

实例二、同时兼容ie6,ie7,ie8和 firefox。
<!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" xml:lang="en" lang="en"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
<script> 
var picpath; 
var image; 
// preview picture 
function preview() 
{ 
document.getelementbyid('preview').style.display = 'none'; 
// 下面代码用来获得图片尺寸,这样才能在ie下正常显示图片 
document.getelementbyid('box').innerhtml 
= "<img width='"+image.width+"' height='"+image.height+"' id='apic' src='"+picpath+"'>"; 
} 
// show view button 
function buttonshow() 
{ 
/* 
这里用来解决图片加载延时造成的预览失败. 
简单说明一下,当image对象的src属性发生改变时javascript会重新给image装载图片内容, 
这通常是需要一些时间的,如果在加载完成之前想将图片显示出来就会造成错误,所以我们 
通过图片的宽度和高度来判断图片是否已经被成功加载,加载完毕才会显示预览按钮. 
这里我仍然有一个困惑,在ie7下预览效果偶尔会失效. 
*/ 
if ( image.width == 0 || image.height == 0 ) { 
settimeout(buttonshow, 1000); 
} else { 
document.getelementbyid('preview').style.display = 'block'; 
} 
} 
function loadimage(ele) { 
picpath = getpath(ele); 
image = new image(); 
image.src = picpath; 
settimeout(buttonshow, 1000); 
} 
function getpath(obj) 
{ 
if(obj) 
{ 
//ie 
if (window.navigator.useragent.indexof("msie")>=1) 
{ 
obj.select(); 
// ie下取得图片的本地路径 
return document.selection.createrange().text; 
} 
//firefox 
else if(window.navigator.useragent.indexof("firefox")>=1) 
{ 
if(obj.files) 
{ 
// firefox下取得的是图片的数据 
return obj.files.item(0).getasdataurl(); 
} 
return obj.value; 
} 
return obj.value; 
} 
} 
</script> 
</head> 
<body> 
<input type="file" name="pic" id="pic" onchange='loadimage(this)' /> 
<input id='preview' type='button' value='preview' style='display:none;' onclick='preview();'> 
<div id='box'></div> 
</body> 
</html>
Javascript 相关文章推荐
(JS实现)MapBar中坐标的加密和解密的脚本
May 16 Javascript
js实现连续英文字符自动换行兼容ie6 ie7和firefox
Sep 06 Javascript
JS使用for循环遍历Table的所有单元格内容
Aug 21 Javascript
深入浅析Node.js单线程模型
Jul 10 Javascript
Vue学习笔记进阶篇之vue-router安装及使用方法
Jul 19 Javascript
vue项目在安卓低版本机显示空白的原因分析(两种)
Sep 04 Javascript
vue 界面刷新数据被清除 localStorage的使用详解
Sep 16 Javascript
vue-test-utils初使用详解
May 23 Javascript
使用 Vue 实现一个虚拟列表的方法
Aug 20 Javascript
js实现经典贪吃蛇小游戏
Mar 19 Javascript
浅谈Vue 自动化部署打包上线
Jun 14 Javascript
vue3如何优雅的实现移动端登录注册模块
Mar 29 Vue.js
window.dialogArguments 使用说明
Apr 11 #Javascript
30个最佳jQuery Lightbox效果插件分享
Apr 11 #Javascript
基于jquery的仿百度搜索框效果代码
Apr 11 #Javascript
基于jquery的监控数据是否发生改变
Apr 11 #Javascript
jQuery实战之品牌展示列表效果
Apr 10 #Javascript
基于PHP+Jquery制作的可编辑的表格的代码
Apr 10 #Javascript
JQuery优缺点分析说明
Apr 10 #Javascript
You might like
既简单又安全的PHP验证码 附调用方法
2016/06/02 PHP
php文件操作之文件写入字符串、数组的方法分析
2019/04/15 PHP
JS中剪贴板兼容性、判断复制成功或失败
2021/03/09 Javascript
javascript学习(一)构建自己的JS库
2013/01/02 Javascript
JavaScript数组常用操作技巧汇总
2014/11/17 Javascript
js实现鼠标划过给div加透明度的方法
2015/05/25 Javascript
浅析JavaScript中的array数组类型系统
2016/07/18 Javascript
thinkphp标签实现bootsrtap轮播carousel实例代码
2017/02/19 Javascript
Vue2.0利用 v-model 实现组件props双向绑定的优美解决方案
2017/03/13 Javascript
angularjs之$timeout指令详解
2017/06/13 Javascript
JavaScript之DOM插入更新删除_动力节点Java学院整理
2017/07/03 Javascript
详解ES6中的三种异步解决方案
2018/06/28 Javascript
开发中常用的25个JavaScript单行代码(小结)
2019/06/28 Javascript
详解用async/await来处理异步
2019/08/28 Javascript
layui.tree组件的使用以及搜索节点功能的实现
2019/09/26 Javascript
JavaScript实现烟花绽放动画效果
2020/08/04 Javascript
分享8个JavaScript库可更好地处理本地存储
2020/10/12 Javascript
基于Python的XSS测试工具XSStrike使用方法
2017/07/29 Python
Python使用修饰器进行异常日志记录操作示例
2019/03/19 Python
Python实现从N个数中找到最大的K个数
2020/04/02 Python
Python 利用Entrez库筛选下载PubMed文献摘要的示例
2020/11/24 Python
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
2021/03/04 Python
实例讲解使用SVG制作loading加载动画的方法
2016/04/05 HTML / CSS
Html5实现文件异步上传功能
2017/05/19 HTML / CSS
苹果台湾官网:Apple台湾
2019/01/05 全球购物
意大利顶级奢侈品电商:LUISAVIAROMA(支持中文)
2020/05/26 全球购物
有多年工作经验的自我评价
2014/03/02 职场文书
公立医院改革实施方案
2014/03/14 职场文书
男女朋友协议书
2014/04/23 职场文书
党员志愿者活动方案
2014/08/28 职场文书
党员违纪检讨书怎么写
2014/11/01 职场文书
给女朋友道歉的话大全
2015/01/20 职场文书
教师文明餐桌光盘行动倡议书
2015/04/28 职场文书
python 使用Tensorflow训练BP神经网络实现鸢尾花分类
2021/05/12 Python
vue2实现provide inject传递响应式
2021/05/21 Vue.js
Python中递归以及递归遍历目录详解
2021/10/24 Python