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 相关文章推荐
js wmp操作代码小结(音乐连播功能)
Nov 08 Javascript
表单切换,用回车键替换Tab健(不支持IE)
Jul 20 Javascript
jquery动态添加删除(tr/td)
Feb 09 Javascript
jQuery EasyUI Dialog拖不下来如何解决
Sep 28 Javascript
使用jquery获取url及url参数的简单实例
Jun 14 Javascript
JavaScript中的遍历详解(多种遍历)
Apr 07 Javascript
vue2导航根据路由传值,而改变导航内容的实例
Nov 10 Javascript
javascript函数的节流[throttle]与防抖[debounce]
Nov 15 Javascript
17道题让你彻底理解JS中的类型转换
Aug 08 Javascript
微信小程序如何实现五星评价功能
Oct 15 Javascript
vue中使用极验验证码的方法(附demo)
Dec 04 Javascript
uni-app如何页面传参数的几种方法总结
Apr 28 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对包含html标签的字符串进行截取的函数分享
2014/06/19 PHP
ThinkPHP空模块和空操作详解
2014/06/30 PHP
PHP程序员简单的开展服务治理架构操作详解(一)
2020/05/14 PHP
表单(FORM)的一些实用效果代码
2007/03/25 Javascript
一个JS小玩意 几个属性相加不能超过一个特定值.
2009/09/29 Javascript
理解Javascript_11_constructor实现原理
2010/10/18 Javascript
计算新浪Weibo消息长度(还可以输入119字)
2013/07/02 Javascript
js保留两位小数使用toFixed实现
2013/07/29 Javascript
javascript中apply和call方法的作用及区别说明
2014/02/14 Javascript
Jquery数字上下滚动动态切换插件
2015/08/08 Javascript
简单对比分析JavaScript中的apply,call与this的使用
2015/12/04 Javascript
jQuery实现可以控制图片旋转角度效果(附demo源码下载)
2016/01/27 Javascript
微信小程序 教程之注册页面
2016/10/17 Javascript
JS实现随机颜色的3种方法与颜色格式的转化
2017/01/05 Javascript
jQuery通过改变input的type属性实现密码显示隐藏切换功能
2017/02/08 Javascript
js判断手机系统是android还是ios
2017/03/07 Javascript
vue生命周期的探索
2019/04/03 Javascript
[49:42]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第一局
2016/03/04 DOTA
[10:21]2018DOTA2国际邀请赛寻真——Winstrike
2018/08/11 DOTA
Python读写Excel文件的实例
2013/11/01 Python
浅谈用Python实现一个大数据搜索引擎
2017/11/28 Python
python字符串的方法与操作大全
2018/01/30 Python
Python实现的网页截图功能【PyQt4与selenium组件】
2018/07/12 Python
利用python打开摄像头及颜色检测方法
2018/08/03 Python
史上最详细的Python打包成exe文件教程
2021/01/17 Python
CSS3实现滚动条动画效果代码分享
2016/08/03 HTML / CSS
公司营业员的工作总结自我评价
2013/10/05 职场文书
班组长岗位职责
2014/03/03 职场文书
行政秘书工作自我鉴定
2014/09/15 职场文书
党员干部形式主义个人整改措施
2014/09/17 职场文书
银行招聘自荐信
2015/03/06 职场文书
音乐课外活动总结
2015/05/09 职场文书
严以修身专题学习研讨会发言材料
2015/11/09 职场文书
教师廉政准则心得体会
2016/01/20 职场文书
古诗之感恩老师
2019/10/24 职场文书
python 详解turtle画爱心代码
2022/02/15 Python