在html5中,支持拖放API接口,通过该功能,数据可以在浏览器与其他应用程序之间互相拖放,想要实现该操作,必须经过一下两个步骤
(1)将想要拖放的对象标签的draggable属性设为true。这样才能将该标签进行拖放,令外,img标签与a标签必 须指定为true,默认允许拖放。
(2)编写与有拖放有关的事件处理代码,常用的播放事件如下:
dragstart 开始拖放操作
drag 拖放过程中
dragenter 被拖放的标签开始进入本标签的范围内
dragover 被拖放的标签正在本标签范围内移动
dragleave 被拖放的标签离开本标签的范围
drop 有其他的标签被拖放到本标签中
dragend 拖放操作结束
拖放function init()
{
// (1) 拖放开始
source.addEventListener("dragstart", function(ev)
{
//(1) 向dataTransfer对象追加数据
var dt = ev.dataTransfer;
dt.effectAllowed = 'all';
//(2) 拖动元素为dt.setData("text/plain", this.id);
dt.setData("text/plain", "你好");
}, false);
// (3) dragend:拖放结束
dest.addEventListener("dragend", function(ev)
{
//不执行默认处理(拒绝被拖放)
ev.preventDefault();
}, false);
// (4) drop:被拖放
dest.addEventListener("drop", function(ev)
{
// 从DataTransfer对象那里取得数据
var dt = ev.dataTransfer;
//(5) 不执行默认处理(拒绝被拖放)
ev.preventDefault();
//停止事件传播
ev.stopPropagation();
}, false);
}
请拖放
在上述的代码中,在页面加载时,自动触发inint()事件。该事件中包括拖放开始,被拖放和结束拖放三个函数。在浏览器中打开该网页,鼠标拖动显示到网页中的晚间图片,网页会自动加载要的内容。