HTML5预览本地图片

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

<!DOCTYPE HTML>
<html>
<head>
    <meta charset="utf-8">
    <title>html5预览本地图片</title>
</head>
<style type="text/css">
    #preview {width: 300px;height: 300px;border: 1px solid #ccc;overflow: hidden;}
    #preview img {width: 100%;height: 100%;}
</style>
<body>
    <input type="file"/>
    <div id="preview"></div>
</body>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
    // IE10以下的浏览器不支持这两种方法

    function dataURLPreview( file ) {
        var img = new Image(),
            url = img.src = URL.createObjectURL( file );
        img.onload = function() {
            // revokeObjectURL方法Opera不支持
            URL.revokeObjectURL(url);
            $(‘#preview‘).empty().append( $( img ) );
        }
    }

    // IE浏览器需要使用FileReader
    function fileReaderPreview( file ) {
        var reader = new FileReader()
        reader.onload = function( e ) {
            var $img = $(‘<img>‘).attr( ‘src‘, e.target.result );
            $(‘#preview‘).empty().append( $img );
        }
        reader.readAsDataURL( file );
    }

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

HTML5预览本地图片的相关文章

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

以http协议开头的url的网页,即服务器上的网页是不能显示计算机本地图片的.如果想查看本地图片但不使用服务端的上传功能,可以使用html5的fileReader实现.(IE10以下的浏览器不支持这个功能) <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>html5 fileReader</title> </head> <st

javascript预览本地图片

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

html5上传本地图片,在线预览及裁剪(filereader,canvas)

1 我们常常需要上传头像,点击上传按钮时候需要预览一下,使用filereader方法无需和后台交互,代码如下: //本地图片在上传之前的预览效果 //图片上传预览 function previewImage(file) { if (file.files && file.files[0]) { var img = document.getElementById('imghead'); var reader = new FileReader(); //读取file完成之后加载 reader.o

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

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

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

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

HTML5可预览多图片ajax上传(使用formData传递数据)

在介绍上传图片之前,我们简单的来了解下FormData的基本使用:介绍完成后这些基本知识后,我们会在文章最后提供一个demo,就是ajax多图片上传前预览效果. 1. formData的基本的用法:首先创建一个 空对象实例 代码如下:var formData = new FormData(); 1-1 获取值通过get(key)/getAll(key)来获取对应的value:比如: formData.get("name"); // 获取key为name的第一个值. formData.g

jquery图片预览使图片在屏幕正中间。

<ul> <li><img src='image/u1.jpg'></li> <li><img src='image/u2.jpg'></li> <li><img src='image/u3.jpg'></li></ul><div class="bg"> <img class="bgImg" src="&qu

js 预览本地上传图片

网址http://jingyan.baidu.com/article/215817f78370dd1edb142372.html <body> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tbody> <tr> <td height="101" align="

js:s上次预览,上传图片预览,图片上传预览

<!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-