H5的拖放

摘要:
先来个代码——————1˂!

先来个代码——————

1 <!DOCTYPE html>
2 <html>
3 <head>
4     <title></title>
5 </head>
6 <body onloat="init()";>
7   <div id="word"draggable="true"style="100px; height: 30px; border: 1px solid #ccc;">drag me </div>
8 <br>
9 <div id="box"style=" 100px; height: 100px; border: 1px solid #333"></div>
10 <script type="text/javascript">
11     functioninit() {
12           varsource =document.getElementById("word");
13           vardest =docuemnt.getElementById("box");
14           
15 source.addEventListener("dragstart", function(ev) {
16               vardt =ev.dataTransfer;
17 dt.effectAllowed = 'all';
18 dt.setData("text/plain", "成功拖入");
19 },false);
20 dest.addEventListener("dragend", fucntion(ev) {
21 ev.preventDefault();
22 },false);
23 dest.addEventListener("drop", function(ev) {
24                         vardt =ev.dataTransfer;
25                          vartext =dt.getData("text/palin");
26 dest.textContent +=text;
27 ev.preventDefault();
28 ev.stopPropagation();
29 },false);
30 document.ondragover = function(e) {e.preventDefault():};
31 document.ondrop = function(e) {e.preventDefault();};
32 }
33 </script>
34 </body>
35 </html>

dataTransfer(对拖拽对象的数据操作)
var data=ev.dataTransfer;
data.effectAllowed ="all"; 拖动效果 none ,link ,copy... ...
data.setData("text/plain","文本"); 设置数据 参数:MIME类型,内容

事件
dragstart 开始拖放 加在可拖放元素上
drag 拖放中... 加在可拖放元素上
dragenter 进入目标容器范围内
dragover 在目标容器内移动
dragleave 离开目标容器范围内
drop 拖放到目标元素中,完成加在目标容器上
dragend 操作结束 加在目标容器上

对于被拖动的元素来说,只需要监听一个”dragstart“事件并且通过H5的拖放第1张

这一代码块来对拖入后在“box“要显示的内容。

对于“box”来说,需要监听“dragend”、“drop”两个事件,其中在dragend事件中,必须阻止默认行为,否则会拒绝拖放。 drop事件需要获取信息切阻止默认行为。

免责声明:文章转载自《H5的拖放》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Asp.net Core 系列之--4.事务、日志及错误处理Oracle EBS R12 XML数据表格的Excel脚本报表下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

kubelet 配置管理 (一)

Kubelet解释说,首先,Kubelet的运行环境是Kubernets集群中节点上的每个工作节点都需要运行Kubelet来与ApiServer kubeadmjoin进程通信。如果您使用kubeadm集群管理工具来安装集群,政府提供了两种方法来使用共享令牌apiserver address:port(特定命令格式:kubeadmjoinapiserver...

Protobuf动态解析那些事儿

收到protobuf数据后,如何自动创建特定的ProtobufMessage对象,然后对其进行反序列化。有关Protobuf的技术介绍,请参阅Google协议缓冲区的在线帮助页面或IBM developerworks上的文章“Google协议缓冲的使用和原理”。protobuffer的动态分析并没有在谷歌protobuffer官网上介绍。有关实现,请参阅淘宝...

tabsSwiper 全屏选项卡(uniapp-uView)

完整代码˂swiper:current="swiperCurrent"@transitio...

css设置文字多余部分显示省略号

如果只显示一行,则可以使用以下方法:  overflow:hidden;  text-overflow:ellipsis;  white-space:nowrap;如果需要显示多行,在需要设置的元素style中添加以下代码:  word-break:break-all;  text-overflow:ellipsis;  display:-webkit-bo...

C#基础系列过滤器与特性

过滤器和特性结合在一起,在方法上优雅地使用过滤器。3.在过滤器中,。NETFrameWork提供了两种类型:一种是提供给ASP的筛选器。NETMVC在命名空间下使用System.Web。另一个是提供给ASP的过滤器。NETWebApi在命名空间下使用System.Web.Http.Filters。这两种类型不能混合使用,否则无法拦截并生效。...

Oracle11g温习-第七章:redo日志

thread:线程,在单实例的环境下,thread#永远是1sequence:日志序列号。在日志切换时会递增。FIRST_CHANGE#:在当前日志中记录的首个数据块的scn。...