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效率 一次判断,而不要次次判断
Mar 30 Javascript
jQuery层次选择器选择元素使用介绍
Apr 18 Javascript
jQuery中:text选择器用法实例
Jan 03 Javascript
用NODE.JS中的流编写工具是要注意的事项
Mar 01 Javascript
javascript获取wx.config内部字段解决微信分享
Mar 09 Javascript
Angular 4依赖注入学习教程之ValueProvider的使用(七)
Jun 04 Javascript
react-native封装插件swiper的使用方法
Mar 20 Javascript
JS栈stack类的实现与使用方法示例
Jan 31 Javascript
简述pm2常用命令集合及配置文件说明
May 30 Javascript
关于vue项目中搜索节流的实现代码
Sep 17 Javascript
微信小程序开发数据缓存基础知识辨析及运用实例详解
Nov 06 Javascript
微信小程序实现分页加载效果
Nov 19 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
php 连接mssql数据库 初学php笔记
2010/03/01 PHP
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
2013/04/26 PHP
一致性哈希算法以及其PHP实现详细解析
2013/08/24 PHP
php mail to 配置详解
2014/01/16 PHP
PHP轻量级数据库操作类Medoo增加、删除、修改、查询例子
2014/07/04 PHP
降低PHP Redis内存占用
2017/03/23 PHP
laravel Model 执行事务的实现
2019/10/10 PHP
js计算页面刷新的次数
2009/07/20 Javascript
JS 去前后空格大全(IE9亲测)
2013/07/15 Javascript
JavaScript判断访问的来源是手机还是电脑,用的哪种浏览器
2013/12/12 Javascript
JS刷新当前页面的几种方法总结
2013/12/24 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
Javascript实现鼠标框选操作  不是点击选取
2016/04/14 Javascript
JS组件系列之Bootstrap table表格组件神器【终结篇】
2016/05/10 Javascript
JavaScript中的this引用(推荐)
2016/08/05 Javascript
javascript 中的事件委托详解
2016/10/25 Javascript
JavaScript数据结构之双向链表定义与使用方法示例
2017/10/27 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
2018/01/03 Javascript
新手快速上手webpack4打包工具的使用详解
2019/01/28 Javascript
Vue表情输入组件 微信face表情组件
2019/02/11 Javascript
jQuery实现飞机大战小游戏
2020/07/05 jQuery
JS倒计时两种实现方式代码实例
2020/07/27 Javascript
[01:08:29]DOTA2-DPC中国联赛定级赛 RNG vs Aster BO3第一场 1月9日
2021/03/11 DOTA
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
python之PyMongo使用总结
2017/05/26 Python
老生常谈python函数参数的区别(必看篇)
2017/05/29 Python
python实现简单淘宝秒杀功能
2018/05/03 Python
python计算auc的方法
2020/09/09 Python
什么是继承
2013/12/07 面试题
幼儿园教师个人反思
2014/01/30 职场文书
党的群众路线对照检查材料范文
2014/09/24 职场文书
党员批评与自我批评
2014/10/15 职场文书
大学生自荐书范文
2015/03/05 职场文书
小学班主任研修日志
2015/11/13 职场文书
导游词之西安骊山
2019/12/03 职场文书