js实现本地图片文件拖拽效果

作者:输出是最好的学习 时间:2024-04-16 10:31:34 

如何拖拽文件到指定位置,具体方法如下

在从本地上传图片的时候,如果使用拖拽效果,想想应该是更加的高大上,下面直接上代码

完整代码:


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
 #dropBox{
  width: 300px;
  height: 300px;
  border:1px solid red;
  font-size: 40px;
  text-align: center;
  background: lightyellow;
  background-repeat: no-repeat;
  background-size: 100%;
 }
 #dropBox div{
  margin:50px auto;
  width: 140px;
 }
</style>
</head>
<body>
<div id="dropBox">
 <div>拖动你的图片到这里</div>
</div>
<script type="text/javascript">
 var dropBox;
 window.onload=function(){
  dropBox = document.getElementById("dropBox");
  // 鼠标进入放置区时
  dropBox.ondragenter = ignoreDrag;
  // 拖动文件的鼠标指针位置放置区之上时发生
  dropBox.ondragover = ignoreDrag;
  dropBox.ondrop = drop;
 }
 function ignoreDrag(e){
  // 确保其他元素不会取得该事件
  e.stopPropagation();
  e.preventDefault();
 }
 function drop(e){
  e.stopPropagation();
  e.preventDefault();

// 取得拖放进来的文件
  var data = e.dataTransfer;
  var files = data.files;
  // 将其传给真正的处理文件的函数

var file = files[0];
  var reader = new FileReader();
  reader.onload=function(e){
   dropBox.style.backgroundImage = "url('"+e.target.result+"')";
  }
  reader.readAsDataURL(file);
 }
</script>
</body>
</html>
标签:js,拖拽
0
投稿

猜你喜欢

  • js实现贪吃蛇游戏含注释

    2024-04-19 10:05:44
  • Python学习笔记之装饰器

    2021-03-03 02:02:48
  • 深入浅析Python中的yield关键字

    2022-04-18 05:02:32
  • mysql insert 存在即不插入语法说明

    2024-01-17 18:46:05
  • Dreamweaver实现flash透明背景

    2008-05-04 09:35:00
  • SQL Server 开窗函数 Over()代替游标的使用详解

    2024-01-25 00:35:40
  • Python threading Local()函数用法案例详解

    2021-11-27 21:57:02
  • Django 用户认证组件使用详解

    2021-05-11 12:44:25
  • pytorch DistributedDataParallel 多卡训练结果变差的解决方案

    2021-09-24 14:31:43
  • 详解爬虫被封的问题

    2021-01-29 15:21:16
  • python/golang实现循环链表的示例代码

    2021-10-31 23:32:20
  • mysql下载与安装过程详解

    2024-01-23 23:39:30
  • wxPython使用系统剪切板的方法

    2023-04-01 14:38:29
  • python 实现存储数据到txt和pdf文档及乱码问题的解决

    2023-02-05 03:40:00
  • Linux上安装Python的PIL和Pillow库处理图片的实例教程

    2021-01-17 15:22:50
  • Keras—embedding嵌入层的用法详解

    2021-06-05 01:08:17
  • 利用Python编写一个记忆翻牌游戏

    2022-09-24 02:20:54
  • windows 7安装ORACLE 10g客户端的方法分享

    2012-07-11 15:36:18
  • 聚焦 DreamWeaver MX 2004

    2010-03-25 12:22:00
  • 详解Golang中Channel的用法

    2024-05-08 10:13:32
  • asp之家 网络编程 m.aspxhome.com