createObjectURL方法实现本地图片预览


Posted in Javascript onSeptember 30, 2019

ie6 可以直接显示本本地路径的图片 如: <img src="file://c:/3.jpg" />  ~~~网上都说ie7就不支持这种文件系统路径的url,但测试 xp ie8还是可以的

ie8+ alphaImageLoader滤镜方式加载本地路径的图片

chrome, firefox, 用dataUrl  或 createObjectURL方法实现

例子:

<!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-Type" content="text/html; charset=gb2312" />
 <title>get file input full path</title>
 <script type="text/javascript" language='javascript'>
 function getFullPath(obj) {
  var newPreview = document.getElementById("img");
  if (obj) {
  //ie
  if (window.navigator.userAgent.indexOf("MSIE") >= 1) {
   obj.select();
   newPreview.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);";
   newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = document.selection.createRange().text;

   return;
  }
  //firefox
  else if (window.navigator.userAgent.indexOf("Firefox") >= 1) {
   if (obj.files) {
   newPreview.src = window.URL.createObjectURL(obj.files.item(0));

   return;
   }
   newPreview.src = obj.value;

   return;
  }
  newPreview.src = obj.value;

  return;
  }
 }
 </script>
</head>
<body>
 <input type="file" onchange="getFullPath(this);" />
 <img id="img" alt="" style="width:200px; height:200px;" src="你自己的透明图片"/>
</body>
</html>

然后 我们来看看 window.URL.createObjectURL() 到底是什么

window.URL.createObjectURL

概述

创建一个新的对象URL,该对象URL可以代表某一个指定的File对象或Blob对象.

语法

objectURL = window.URL.createObjectURL(blob);

  • blob参数是一个File对象或者Blob对象.
  • objectURL是生成的对象URL.通过这个URL,可以获取到所指定文件的完整内容.

示例

查看使用对象URL显示图片.

附注

在每次调用createObjectURL()方 法的时候,都会创建一个新的对象URL,即使参数中的这个对象已经有了自己的对象URL.在你不需要这些对象URL的时候,你应该通过调用 window.URL.revokeObjectURL()方法来释放它们所占用的内容.虽然即使你不主动释放它们,浏览 器也会在当前文档被卸载的时候替你释放,不过,考虑到更好的性能和更少的内存占用,你应该在安全的时候主动施放它们.

浏览器兼容性

createObjectURL方法实现本地图片预览

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery分别获取选中的复选框值的示例
Jun 17 Javascript
javascript实现日期时间动态显示示例代码
Sep 08 Javascript
vue 中自定义指令改变data中的值
Jun 02 Javascript
JavaScript之Date_动力节点Java学院整理
Jun 28 Javascript
利用node.js+mongodb如何搭建一个简单登录注册的功能详解
Jul 30 Javascript
vue技术分享之你可能不知道的7个秘密
Apr 09 Javascript
小程序云开发实战小结
Oct 25 Javascript
JavaScript继承的特性与实践应用深入详解
Dec 30 Javascript
vuejs移动端实现div拖拽移动
Jul 25 Javascript
利用layer实现表单完美验证的方法
Sep 26 Javascript
vue项目引入ts步骤(小结)
Oct 31 Javascript
微信小程序实现吸顶特效
Jan 08 Javascript
微信小程序实现分享商品海报功能
Sep 30 #Javascript
Bootstrap实现模态框效果
Sep 30 #Javascript
HTML+JavaScript实现扫雷小游戏
Sep 30 #Javascript
React+Redux实现简单的待办事项列表ToDoList
Sep 29 #Javascript
JS回调函数简单易懂的入门实例分析
Sep 29 #Javascript
在vue中根据光标的显示与消失实现下拉列表
Sep 29 #Javascript
js 下拉菜单点击旁边收起实现(踩坑记)
Sep 29 #Javascript
You might like
PHP脚本的10个技巧(4)
2006/10/09 PHP
PHP取余函数介绍MOD(x,y)与x%y
2014/05/15 PHP
php操作xml并将其插入数据库的实现方法
2016/09/08 PHP
PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法
2017/06/20 PHP
PHP chop()函数讲解
2019/02/11 PHP
php-fpm中max_children的配置
2019/03/15 PHP
ASP.NET jQuery 实例13 原创jQuery文本框字符限制插件-TextArea Counter
2012/02/03 Javascript
jQuery层动画定位滑动效果的方法
2015/04/30 Javascript
JS实现带有抽屉效果的产品类网站多级导航菜单代码
2015/09/15 Javascript
jquery实现界面无刷新加载登陆注册
2016/07/30 Javascript
JS实现table表格内针对某列内容进行即时搜索筛选功能
2018/05/11 Javascript
微信小程序自定义多选事件的实现代码
2018/05/17 Javascript
vue鼠标移入添加class样式,鼠标移出去除样式(active)实现方法
2018/08/22 Javascript
VeeValidate 的使用场景以及配置详解
2019/01/11 Javascript
微信小程序学习笔记之获取位置信息操作图文详解
2019/03/29 Javascript
详解vue页面首次加载缓慢原因及解决方案
2019/11/06 Javascript
微信小程序实现时间进度条功能
2020/11/17 Javascript
[00:48]食人魔魔法师至宝“金鹏之幸”全新模型和自定义特效展示
2019/12/19 DOTA
python检查字符串是否是正确ISBN的方法
2015/07/11 Python
python 读取txt,json和hdf5文件的实例
2018/06/05 Python
python实现转盘效果 python实现轮盘抽奖游戏
2019/01/22 Python
Python面向对象思想与应用入门教程【类与对象】
2019/04/12 Python
python binascii 进制转换实例
2019/06/12 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
python常用数据重复项处理方法
2019/11/22 Python
python实现音乐播放和下载小程序功能
2020/04/26 Python
澳大利亚买卖正宗二手奢侈品交易平台:Luxe.It.Fwd
2019/10/16 全球购物
Nordgreen手表德国官方网站:丹麦极简主义手表
2019/10/31 全球购物
秋天的图画教学反思
2014/05/01 职场文书
经典团队口号
2014/06/06 职场文书
2014年教师节讲话稿5篇
2014/09/10 职场文书
迎国庆演讲稿
2014/09/15 职场文书
关于上班时间调整的通知
2015/04/23 职场文书
小学运动会入场词
2015/07/18 职场文书
写作指导:怎么书写竞聘演讲稿?
2019/07/04 职场文书
Python实现老照片修复之上色小技巧
2021/10/16 Python