主要是HTML5 的拖放(Drag 和 Drop)

例子(不需要对div设置ID):

 <!DOCTYPE HTML>
<html>
<head> <script type="text/javascript">
function allowDrop(ev)
{
ev.preventDefault();
} var srcdiv = null;
function drag(ev,divdom)
{
srcdiv=divdom;
ev.dataTransfer.setData("text/html",divdom.innerHTML);
} function drop(ev,divdom)
{
ev.preventDefault();
if(srcdiv != divdom){
srcdiv.innerHTML = divdom.innerHTML;
divdom.innerHTML=ev.dataTransfer.getData("text/html");
}
}
</script>
</head>
<body> <div style="width: 50px;height:50px;" ondrop="drop(event,this)" ondragover="allowDrop(event)" draggable="true" ondragstart="drag(event, this)">
div1!
</div>
<div style="width: 50px;height:50px;" ondrop="drop(event,this)" ondragover="allowDrop(event)" draggable="true" ondragstart="drag(event, this)">
div2!
</div>
<div style="width: 50px;height:50px;" ondrop="drop(event,this)" ondragover="allowDrop(event)" draggable="true" ondragstart="drag(event, this)">
div3
</div> </body>
</html>

上面函数介绍:

  1. ondrop: 当放置被拖数据时,会发生 drop 事件,这里自定义drop(event,this)函数,互换两个的innerHTML
  2. ondragover:当拖动链接等有默认事件的元素时,要在ondragover事件中用ev.preventDefault()阻止默认事件。否则drop事件不会触发。
  3. draggable:允许拖动。
  4. ondragstart:规定当元素被拖动时,会发生什么。在上面的例子中,ondragstart 属性调用了一个函数,drag(event),它规定了被拖动的数据。dataTransfer.setData() 方法设置被拖数据的数据类型和值。

-----请参考w3cschool:html5拖放

---------------------------------------------------------------------阿纪----------------------------------------------------------------------

最新文章

  1. BZOJ2809: [Apio2012]dispatching
  2. mac安装java8
  3. jquery-常用的运行函数
  4. Ubuntu 安装WPS
  5. 【转】Spring Quartz的原理
  6. SOA之(2)——SOA架构基础概念与设计框架
  7. 2010“架构师接龙”问答--杨卫华VS赵劼(转)
  8. UVA 11426 GCD-Extreme(II) ★ (欧拉函数)
  9. JSON 日期格式问题 /Date(1325696521000)/
  10. if处理多分支结构
  11. bzoj:1687;poj 2434:[Usaco2005 Open]Navigating the City 城市交通
  12. JAVA并发编程学习笔记------对象的可见性及发布逸出
  13. Linux 搭建 Nginx+PHP-FPM环境
  14. Jrebel 配置
  15. Spring Boot初识(3)- Spring Boot整合Swagger
  16. Android Studio配置Android Annotations框架详解--说说那些坑
  17. 廖雪峰Java5集合-3Map-1使用Map
  18. vue-video-player的使用总结
  19. LinqToHubble介绍及简单使用步骤——LinqToHubble是对HubbleDotnet的封装
  20. 设置pip源头地址

热门文章

  1. mysql之select+五种子句的理解
  2. java常用string inputStream转换
  3. 【转】linux中的sort命令
  4. php throw new Excpetion()之后,程序还往下继续运行吗?
  5. hdu 5443 The Water Problem 线段树
  6. 文件I/O(不带缓冲)之read函数
  7. 应聘.net开发工程师常见的面试题(一)(转载)
  8. GPS(Global Positioning System)全球定位系统
  9. iOS之NSUserDefaults的用法
  10. 在oc代码中使用swift第三方框架