file美化

原生的<input type="file"> 很丑 直接修改样式又很麻烦 框架的file进行了很多包装处理 有时候其提供的功能并不能满足我们的实际需求

这时我们可以对原生的表单进行伪装达到我们需要的效果

给input添加 position:absolute; opacity: 0;属性 并通过top left属性调整位置 width height 调整大小 使input盖住美化后的<div> 

 opacity: 0;可以将元素变成透明的这样看到的就是美化后的<div> 而点击时却是触发的input

如果点击没有出现效果 原因可能是input被遮罩了 将 z-index属性增大

<div>		
<div>对这个div做美化处处理</div>
    <input type="file" class="opacity-file" name="file"  
        style="position:absolute;top:0px;left: 0px;
                width: 258px;height: 135px;
                opacity: 0;">

</div>

 监听文件的改变并作出响应

$(".opacity-file").on("change",function (e) {
	   var e = e || window.event;
	   //获取 文件 
       //files是一个数组,如果支持多个文件,则需要遍历
	   var f  = e.target.files;
	   if(files.length>0){

         //上次修改时间  
         alert(f[0].lastModifiedDate);  
         //名称  
         alert(f[0].name);  
         //大小 字节  
         alert(f[0].size);  
         //类型  
         alert(f[0].type);  

	   }else{
	    
	   }
	});

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值