HTML5 – 一个拖拽功能的例子
2013-03-06 09:57
330 查看
我最近出席了一系列的研讨会,HTML5这个主题在这些会上反复出现。出于好奇我略看了几眼后,开始觉得应该好好的挖掘一下HTML5,看看它究竟会给我们今天技术上带来哪些好处。一个特别有意思的东西就是拖拽功能编程接口 … 早期的HTML编程开发者一直对此渴望却不可及。我感觉这个功能非常有用 … 拖拽功能的实现已经成了几个不费吹灰之力的函数调用了。
为了演示拖拽用例,我要创建一个简单的网络配置工具(UI),管理员可以用它来收集资源。你能在各个区域之间拖拽资源,往区域里添加资源,删除没有用的资源。出于教学的目的,我尽量使这个例子简单,但可以看到,依据这些基本的做法,你可以开发出一个全功能的网络管理工具。
下面就是我的例子,你可以试用一下 (需要Firefox 3.5 以上版本):
https://www.ibm.com/developerworks/mydeveloperworks/blogs/bobleah/resource/d_and_d.html?lang=en
实现拖拽功能的关键方法非常的简单,就像下面写的这样:
function dragIt(target, e) {
e.dataTransfer.setData(‘SpanImg’, target.id);
}
function dropIt(target, e) {
var id = e.dataTransfer.getData(‘SpanImg’);
target.appendChild(document.getElementById(id));
e.preventDefault();
}
我使用了table元素来实现布局结构,并把它当做ondrop[/u]事件的目标:
<td align=”center” width=”100″ id=”blue” ondrop=”dropIt(this, event)”ondragenter=”return false” ondragover=”return
false”> …. </td>
我使用了span元素(包裹住图片)做拖拽[/u]对象:
<span draggable=”true” id=”t_1″ ondragstart=”dragIt(this, event)”><img src=”https://www.ibm.com/developerworks/mydeveloperworks/blogs/bobleah/resource/tower.jpg“></span>
你可以下载拖拽例子中的所有的HTML代码 点击下载.
以我这初始的体验来看,HTML5将会提供给我们令人激动的用途。目前,这些API是有限制的,只在个别的浏览器里有效;对于我的例子,你需要在Firefox 3.5 版本以上才能运行。我将继续探索有哪些新功能今天我们可以使用,继续写更多的例子 … 请耐心等待!
原文链接:
为了演示拖拽用例,我要创建一个简单的网络配置工具(UI),管理员可以用它来收集资源。你能在各个区域之间拖拽资源,往区域里添加资源,删除没有用的资源。出于教学的目的,我尽量使这个例子简单,但可以看到,依据这些基本的做法,你可以开发出一个全功能的网络管理工具。
下面就是我的例子,你可以试用一下 (需要Firefox 3.5 以上版本):
https://www.ibm.com/developerworks/mydeveloperworks/blogs/bobleah/resource/d_and_d.html?lang=en
实现拖拽功能的关键方法非常的简单,就像下面写的这样:
function dragIt(target, e) {
e.dataTransfer.setData(‘SpanImg’, target.id);
}
function dropIt(target, e) {
var id = e.dataTransfer.getData(‘SpanImg’);
target.appendChild(document.getElementById(id));
e.preventDefault();
}
我使用了table元素来实现布局结构,并把它当做ondrop[/u]事件的目标:
<td align=”center” width=”100″ id=”blue” ondrop=”dropIt(this, event)”ondragenter=”return false” ondragover=”return
false”> …. </td>
我使用了span元素(包裹住图片)做拖拽[/u]对象:
<span draggable=”true” id=”t_1″ ondragstart=”dragIt(this, event)”><img src=”https://www.ibm.com/developerworks/mydeveloperworks/blogs/bobleah/resource/tower.jpg“></span>
你可以下载拖拽例子中的所有的HTML代码 点击下载.
以我这初始的体验来看,HTML5将会提供给我们令人激动的用途。目前,这些API是有限制的,只在个别的浏览器里有效;对于我的例子,你需要在Firefox 3.5 版本以上才能运行。我将继续探索有哪些新功能今天我们可以使用,继续写更多的例子 … 请耐心等待!
原文链接:
|
相关文章推荐
- HTML5:一个拖拽网页元素的例子
- 一个功能齐全的DataGrid分页例子
- 一个功能齐全的DataGrid分页例子
- HTML5 WebSockets功能的例子
- 用spring做一个javaMail功能的例子
- 学习oracle里面触发器的功能作用,举一个例子来说明:
- 一个功能齐全的DataGrid分页例子 -------------bluemoon213的专栏
- 利用HTML5的一个重要特性 —— DeviceOrientation来实现手机网站上的摇一摇功能
- HTML5拖拽文件到浏览器并实现文件上传下载功能代码
- 一个简单的例子看明白如何利用window.location.hash实现ajax操作时浏览器的前进/后退功能
- html5新增拖拽和拖放功能介绍:
- 一个轻量级的jQuery拖拽排序插件 - HTML5 Sortable
- 一个辅助开发的UI布局,包括拖拽、滚动、动画、背景模糊功能
- \t\t用spring做一个javaMail功能的例子
- js的prototype扩展的一个例子,模仿C#的StringBuilder功能,数组组合字符串,效率大于+拼凑
- 一个功能齐全的DataGrid分页例子
- 一个简单的例子看明白如何利用window.location.hash实现ajax操作时浏览器的前进/后退功能
- 每天一个JavaScript实例-html5拖拽
- Java 小例子:创建一个可拖拽图片的面板
- 分享一个HTML5的drag and drop API实现的图片拖拽分组效果