最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JS点击图片弹出文件选择框并覆盖原图功能的实现代码

来源:动视网 责编:小采 时间:2020-11-27 22:31:38
文档

JS点击图片弹出文件选择框并覆盖原图功能的实现代码

JS点击图片弹出文件选择框并覆盖原图功能的实现代码:简单说下原理,把显示的图片的<img>标签 和上传文件的 <input> 标签放在同一个div下,设置<img>的大小和<input>的大小一样,<input> 设置透明度为0,用定位和设置优先级把input浮动在<img>上方,这样点
推荐度:
导读JS点击图片弹出文件选择框并覆盖原图功能的实现代码:简单说下原理,把显示的图片的<img>标签 和上传文件的 <input> 标签放在同一个div下,设置<img>的大小和<input>的大小一样,<input> 设置透明度为0,用定位和设置优先级把input浮动在<img>上方,这样点


简单说下原理,把显示的图片的<img>标签 和上传文件的 <input> 标签放在同一个div下,设置<img>的大小和<input>的大小一样,<input> 设置透明度为0,用定位和设置优先级把input浮动在<img>上方,这样点击图片就能选择上传图片,选择完图片后获取图片地址,替换掉原来的默认图片就能实现覆盖原图功能。

js代码:

<script type="text/javascript" src="jquery1.8.3.min.js"></script> 
<script type="text/javascript"> 
 $(function() { 
 //建立一個可存取到該file的url 
 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; 
 } 
 //获取点击的图片元素 
 var cdimg = $('.fileImgs1').children('img'); 
 //获取上传图片的 input 标签元素 
 var cdfile = $('.fileImgs1').children('input[type="file"]'); 
 //设置input 大小和图片一致 
 cdfile.css({'width':cdimg.css('width'),'height':cdimg.css('height')}); 
 //input透明度为0,定位,优先级比图片高 
 cdfile.css({'opacity':0,'position':'absolute','z-index':10}); 
 //判断input的图片文件改变则img的图片也替换为input选择的图片 
 cdfile.change(function() { 
 if (this.files && this.files[0]) { 
 var objUrl = getObjectURL(this.files[0]); 
 if (objUrl) { 
 $(this).siblings('img').attr("src", objUrl); 
 } 
 } 
 }); 
 }) 
</script> 

HTML调用代码:

<body> 
<span style="white-space:pre"> </span><div class='fileImgs1'> 
 <input type="file" name='img4'> 
 <img src="getu1.png" style='width:145px;height:125px' "> 
 </div> 
</body> 

总结

以上所述是小编给大家介绍的JS点击图片弹出文件选择框并覆盖原图功能的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

文档

JS点击图片弹出文件选择框并覆盖原图功能的实现代码

JS点击图片弹出文件选择框并覆盖原图功能的实现代码:简单说下原理,把显示的图片的<img>标签 和上传文件的 <input> 标签放在同一个div下,设置<img>的大小和<input>的大小一样,<input> 设置透明度为0,用定位和设置优先级把input浮动在<img>上方,这样点
推荐度:
标签: 图片 原图 实现
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top