<!DOCTYPE html>
<html> <head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>checkbox -value </title>
<link rel="stylesheet" href="">
<script src='./jquery-1.7.1.min.js'></script>
<style type="text/css">
.showImg {} .showImg img {
width: 50px;
height: 50px;
}
</style>
</head>
<body>
<div class="main">
<label for="imgfile"><span class="fakeButton">Insert Images</span></label>
<!-- 下面为了避免中文,由上面替换 -->
<!-- <input type="file" accept="image/jpeg,image/png,image/gif" name="imgfile" id="imgfile" multiple value="Insert Image" onchange="javascript:setImagePreview();" style="position:absolute;clip:rect(0 0 0 0);"> -->
<input type="file" accept="image/jpeg,image/png,image/gif" name="imgfile" id="imgfile" multiple onchange="javascript:setImagePreview();">
<br />
<div id="showImg" class="showImg"></div>
</div>
<script type="text/javascript">
function setImagePreview() {
var imghtml = imgUrls();
if (imghtml === '111') {
window.alert('Notice', 'You can upload up to three photos');
return false;
}
$('#showImg').html(imghtml);
}
// 限制传递图片的张数
function imgUrls() {
var imgsrcs = getUrl();
var imghtml = '';
var len = imgsrcs.length;
if (len > 3) {
return '111';
}
for (var i = 0; i < len; i++) {
imghtml += '<img src=' + imgsrcs[i] + ' alt="you have selected">&nbsp;&nbsp;';
}
return imghtml;
} function getUrl() {
var obj = $('#imgfile')[0].files;
var len = obj.length;
var imgsrcs = [];
for (var i = 0; i < len; i++) {
imgsrcs[i] = getObjectURL(obj[i]);
}
//添加图片路径到img src中进行预览
//不同浏览器下的路径不同
function getObjectURL(file) {
var url = null;
if (window.createObjectURL != undefined) { // basic
url = window.createObjectURL(file);
} else if (window.URL != undefined) { // mozilla(firefox)
url = window.URL.createObjectURL(file);
} else if (window.webkitURL != undefined) { // webkit or chrome
url = window.webkitURL.createObjectURL(file);
}
return url;
} return imgsrcs;
}
</script>
</body> </html>

原生js上传图片时的预览的更多相关文章

  1. JS 上传图片时实现预览

    网页中一张图片可以这样显示: <img src="http://www.letuknowit.com/images/wg.png"/>也可以这样显示:<img s ...

  2. JS上传图片本地实时预览缩略图

    HTML 代码如下 <body> <table width="100%" border="0" cellspacing="0&quo ...

  3. 原生JS上传,实现预览并且兼容大部分IE

    // 前提条件: ie浏览器模式下,用户要允许ie默认的加载项:以下兼容ie的方法才会生效 // 图片上传预览 IE是用了滤镜 function previewImage(file) { var MA ...

  4. 兼容好的JS图片上传预览代码

    转 : http://www.codefans.net/articles/1395.shtml 兼容好的JS图片上传预览代码 (谷歌,IE11) <html xmlns="http:/ ...

  5. HTML5 CSS3 经典案例:无插件拖拽上传图片 (支持预览与批量) (二)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/31513065 上一篇已经实现了这个项目的整体的HTML和CSS: HTML5 C ...

  6. JS实现的图片预览功能

    之前的博文有实现过图片上传预览,但那种方法是预览时就将图片上传,会产生很大的浪费空间.找到了之前有人写的用JS实现的图片预览,就说用js将上传的图片显示,上传代码在之前的博文中有写到. 以下是实现的代 ...

  7. OSS上传图片无法在线预览的解决方案

    OSS上传图片无法在线预览的解决方案 最近在做的项目涉及到商品详情,由于前端用的flutter框架并且该详情为富文本,dart语言关于富文本的组件不是非常友好,当富文本中的图片无法在浏览器中直接预览的 ...

  8. 使用pdf.js在移动端预览pdf文档

    pdf.js 是一个技术原型主要用于在 HTML5 平台上展示 PDF 文档,无需任何本地技术支持. 在线演示地址:http://mozilla.github.com/pdf.js/web/viewe ...

  9. JS图片上传预览插件制作(兼容到IE6)

    其实,图片预览功能非常地常见.很意外,之前遇到上传图片的时候都不需要预览,也一直没有去实现过.现在手上的项目又需要有图片预览功能,所以就动手做了一个小插件.在此分享一下思路. 一.实现图片预览的一些方 ...

随机推荐

  1. Redis入门到高可用(七)——Hash

    一.结构 Mapmap结构: filed 不能相同,value可以相同. 二.重要指令 ♦️ HSET  ♦️ HGET  ♦️ HDEL ♦️ Hlen  ♦️ HEXISTS ♦️HGETALL  ...

  2. Redis入门到高可用(五)—— 单线程

    一.单线程为何这么快 1)绝大部分请求是纯粹的内存操作(非常快速) 2)采用单线程,避免了不必要的上下文切换和竞争条件 3)非阻塞IO 内部实现采用epoll,采用了epoll+自己实现的简单的事件框 ...

  3. oracle sql小结(主要讲横列转换的例子)group by以及wmsys.wm_concat()的使用

    ---计算九月每个电厂的数量select f_dcname,count(f_dcname) as 九月份的数量 from W_EC_PLACESTATION_COLLECT twhere f_coll ...

  4. mysql数据具体操作

    1.建表操作 前面提到的是简单的建表,这里需要提到一下外键. create table userinfo2( id int auto_increment primary key, name ), ge ...

  5. crontab 详解

    1.crontab文件格式  {minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} ● mi ...

  6. 【LeetCode每天一题】Reverse Linked List(链表反转)

    Reverse a singly linked list. Example:           Input: 1->2->3->4->5->NULL          ...

  7. git cherry-pick 报错 fatal: bad object

    场景:程序员A提交了一个commit到gerrit上,我们叫他为commit_id1,但是还没有review,那就是没有入库,程序员B想再本地拿到这个commitd_id1,既然这个提交没有入库,很明 ...

  8. vbox中安装mac系统

    参考: https://www.cnblogs.com/liming2017/p/7566953.html

  9. [LeetCode] 849. Maximize Distance to Closest Person_Easy tag: BFS

    In a row of seats, 1 represents a person sitting in that seat, and 0 represents that the seat is emp ...

  10. ASP.NET 预编译命令(解决发布后第一次访问慢问题)

    ASP.NET 编译工具 (Aspnet_compiler.exe) 官方说明 新建bat文件   @echo off   CD /d C:\Windows\Microsoft.NET\Framewo ...