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 相关文章推荐
Javascript 判断是否存在函数的方法
Jan 03 Javascript
jquery实现图片左右切换的方法
May 07 Javascript
JS+CSS实现带小三角指引的滑动门效果
Sep 22 Javascript
JS原型对象的创建方法详解
Jun 16 Javascript
AngularJS实现分页显示数据库信息
Jul 01 Javascript
详解用vue编写弹出框组件
Jul 04 Javascript
Angular 封装并发布组件的方法示例
Apr 19 Javascript
vue.draggable实现表格拖拽排序效果
Dec 01 Javascript
jQuery事件多次绑定与解绑问题实例分析
Feb 19 jQuery
jQuery实现高级检索功能
May 28 jQuery
vant IndexBar实现的城市列表的示例代码
Nov 20 Javascript
详解如何在JS代码中消灭for循环
Dec 11 Javascript
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
Zend Guard一些常见问题解答
2008/09/11 PHP
PHP5 的对象赋值机制介绍
2011/08/02 PHP
解析php中两种缩放图片的函数,为图片添加水印
2013/06/14 PHP
CentOS 6.2使用yum安装LAMP以及phpMyadmin详解
2013/06/17 PHP
关于PHP内存溢出问题的解决方法
2013/06/25 PHP
ThinkPHP CURD方法之where方法详解
2014/06/18 PHP
php实现简单文件下载的方法
2015/01/30 PHP
php实现数组重复数字统计实例
2018/09/30 PHP
详解Laravel服务容器的绑定与解析
2019/11/05 PHP
JS清空多文本框、文本域示例代码
2014/02/24 Javascript
angularjs 处理多个异步请求方法汇总
2015/01/06 Javascript
jQuery实现DIV层淡入淡出拖动特效的方法
2015/02/13 Javascript
jQuery 3 中的新增功能汇总介绍
2016/06/12 Javascript
关于vue中watch检测到不到对象属性的变化的解决方法
2018/02/08 Javascript
vue2.0 实现页面导航提示引导的方法
2018/03/13 Javascript
vue.js仿hover效果的实现方法示例
2019/01/28 Javascript
[01:51]历届DOTA2国际邀请赛举办地回顾 TI9落地上海
2018/08/26 DOTA
python使用PyFetion来发送短信的例子
2014/04/22 Python
python的类方法和静态方法
2014/12/13 Python
Python实现在Linux系统下更改当前进程运行用户
2015/02/04 Python
python实现挑选出来100以内的质数
2015/03/24 Python
详解Python中内置的NotImplemented类型的用法
2015/03/31 Python
使用Python编写爬虫的基本模块及框架使用指南
2016/01/20 Python
Python实现矩阵转置的方法分析
2017/11/24 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
python实现人工智能Ai抠图功能
2019/09/05 Python
python实现的多任务版udp聊天器功能案例
2019/11/13 Python
Python tensorflow实现mnist手写数字识别示例【非卷积与卷积实现】
2019/12/19 Python
Python random库使用方法及异常处理方案
2020/03/02 Python
css3实现垂直下拉动画菜单示例
2014/04/22 HTML / CSS
大学自荐信
2013/12/12 职场文书
教师个人剖析材料
2014/02/05 职场文书
我的长生果教学反思
2014/04/28 职场文书
南京青奥会口号
2014/06/12 职场文书
竞聘自述材料
2014/08/25 职场文书
佛光寺导游词
2015/02/10 职场文书