JavaScript使用html5 fileReader来预览本地图片

以http协议开头的url的网页,即服务器上的网页是不能显示计算机本地图片的。
如果想查看本地图片但不使用服务端的上传功能,可以使用html5的fileReader实现。
(IE10以下的浏览器不支持这个功能)

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <title>html5 fileReader</title>
</head>
<style type="text/css">
    *{margin: 0;padding: 0;}
    input{margin: 20px 0 10px 20px;}
    .preview{margin-left: 20px;width: 300px;height: 300px;border: 1px solid #ccc;overflow: hidden;}
    .preview img{width: 100%;height: 100%;}
</style>
<body>
    <input type="file"/>
    <div class="preview"></div>
</body>
<script type="text/javascript" src="http://cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
<script type="text/javascript">
    function dataURLPreview(file) {
        var img = new Image(),
            url = img.src = URL.createObjectURL(file);
        img.onload = function() {
            URL.revokeObjectURL(url);
            $(‘.preview‘).empty().append($(img));
        };
    }

    $(‘input[type=file]‘).change(function(e) {
        var file = e.target.files[0];
        dataURLPreview(file);
    });
</script>
</html>
时间: 2024-08-07 20:32:39

JavaScript使用html5 fileReader来预览本地图片的相关文章

HTML5预览本地图片

以http协议开头的url的网页,即服务器上的网页是不能显示计算机本地图片的,如果想查看本地图片但不使用服务端的上传功能,可以使用html5的fileReader实现. <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>html5预览本地图片</title> </head> <style type="text/css&

基于HTML5的可预览多图片Ajax上传

一.关于图片上传什么什么的 在XHTML的时代,我们使用HTML file控件上传图片一次只能上传一张.要一次上传多图,做法是借助于flash.例如swfupload.js.可惜,使用复杂的点,比如flash文件需与页面同父文件夹,JavaScript文件大小也很可观. 我之前曾翻译编辑过一篇“Ajax Upload多文件上传插件”的文章,此插件的亮点是使用隐藏的iframe框架页面模拟ajax上传,但是,实际上,还是一次只能上传1张图片,可以多次上传而已. HTML5是个好东东,其中之一就是支

javascript预览本地图片

<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author" content="buexplain"> <meta na

利用html5实现上传图片预览

在HTML5中,通过FileReader可以轻松的实现这个功能. 只要在<input type="file" />文件表单元素中监听 onchange 事件,然后通过FileReader读取图片文件,然后将读取的内容在<img>中显示即可. 实现代码 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8" /

File控件选择图片的时候在Html5下马上预览

页面HTML <div> <img src="@pic.Path" id="img" style="width:200px;height:200px;" /> <form id="form_photo" method="post" action="/N/SavePhoto?id=1"> <input style=" display:no

JavaScript - 表单提交前预览图片属性

即Preview image and its properties before upload 其实这东西网上到处都是,但并不完整. 正好我也遇到了这个问题,不仅仅是预览,还需要得到图片的属性. 于是东凑西凑整理出一个完整的版本,并根据个人的理解加上了一点点说明. (ps:感谢爆栈^^) 首先做一些准备工作,HTML方面主要是img和input标签的id:     <form>         <input type='file' id="imgFile"  />

HTML5上传图片并预览

一个简易的实现: <!DOCTYPE html> <html> <head> <title>HTML5上传图片并预览</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script src="https://cdn.bootcss.com/jquery/2.2.4/jquery

一款基于jQuery可放大预览的图片滑块插件

今天给大家分享一款基于jQuery可放大预览的图片滑块插件.这款jQuery焦点图插件的特点是可以横向左右滑动图片,并且点击图片可以进行放大预览,唯一的缺陷是这款焦点图并不能循环切换,如果你有较好的JavaScript功底,可以自己修改代码来实现这一功能.效果图如下: 在线预览   源码下载 实现的代码. html代码: <div id="slider"> <div class="spic"> <img src="images

HTML5的可预览多图Ajax上传

参考地址:http://www.zhangxinxu.com/wordpress/2011/09/%E5%9F%BA%E4%BA%8Ehtml5%E7%9A%84%E5%8F%AF%E9%A2%84%E8%A7%88%E5%A4%9A%E5%9B%BE%E7%89%87ajax%E4%B8%8A%E4%BC%A0/ 1 <!doctype html> 2 <html> 3 <head lang="zh-CN"> 4 <meta charset=