您现在的位置是:网站首页> 编程资料编程资料
HTML5中实现拖放效果无须借助javascriptHTML5中的拖放实现详解HTML5拖放功能_动力节点Java学院整理 HTML5拖放API实现拖放排序的实例代码HTML5拖放效果的实现代码详解HTML5中的拖放事件(Drag 和 drop)HTML5 拖放功能实现代码 HTML5+CSS3实现拖放(Drag and Drop)示例HTML5 form标签之解放表单验证、增加文件上传、集成拖放的使用方法Html5实现如何在两个div元素之间拖放图像html5拖曳操作 HTML5实现网页元素的拖放操作
2023-10-15
410人已围观
简介 不使用javascript实现拖放效果,一直以来都是网友们所希望看到的,二今天html5却做到了接下来详细为您介绍,需要了解的朋友可以参考下
在Web开发中,我们要实现拖放效果,需要借助Javascript。今天让我们使用Html5实现它:
先看html核心代码:
复制代码
代码如下:把黄色小方块拖入到红色大方框中
draggable属性是html5新增加的,它有三个值true,false,auto. true是可以拖,false是不可以,auto由用户浏览器是否支持而定。更多请可以参考官方文档.
加上一点儿样式:
复制代码
代码如下:然后我们来看javascript:
复制代码
代码如下:function listenEvent(eventTarget, eventType, eventHandler) {
if (eventTarget.addEventListener) {
eventTarget.addEventListener(eventType, eventHandler,false);
} else if (eventTarget.attachEvent) {
eventType = "on" + eventType;
eventTarget.attachEvent(eventType, eventHandler);
} else {
eventTarget["on" + eventType] = eventHandler;
}
}
// cancel event
function cancelEvent (event) {
if (event.preventDefault) {
event.preventDefault();
} else {
event.returnValue = false;
}
}
// cancel propagation
function cancelPropagation (event) {
if (event.stopPropagation) {
event.stopPropagation();
} else {
event.cancelBubble = true;
}
}
window.onload=function() {
var target = document.getElementById("drop");
listenEvent(target,"dragenter",cancelEvent);
listenEvent(target,"dragover", dragOver);
listenEvent(target,"drop",function (evt) {
cancelPropagation(evt);
evt = evt || window.event;
evt.dataTransfer.dropEffect = 'copy';
var id = evt.dataTransfer.getData("Text");
target.appendChild(document.getElementById(id));
});
var item = document.getElementById("item");
item.setAttribute("draggable", "true");
listenEvent(item,"dragstart", function(evt) {
evt = evt || window.event;
evt.dataTransfer.effectAllowed = 'copy';
evt.dataTransfer.setData("Text",item.id);
});
};
function dragOver(evt) {
if (evt.preventDefault) evt.preventDefault();
evt = evt || window.event;
evt.dataTransfer.dropEffect = 'copy';
return false;
}
由上面的代码我们看使用一组HTML5 提供的拖放Events,直接来看下面:
dragstart
Drag event starts.
drag
During the drag operation.
dragenter
Drag is over the target; used to determine if target will accept drop.
dragover
Drag is over target; used to determine feedback to user.
drop
Drop occurs.
dragleave
Drag leaves target.
dragend
Drag operation ends.
定义了相关的事件,来实现想要功能。上面的Js不难看懂。
你可以自己试一下,目前在Opera支持最好,IE效果并不好。
希望对您Web开发有帮助.
相关内容
- html5 application cache遇到的严重问题Application Cache未缓存文件无法访问无法加载问题HTML5使用ApplicationCache接口实现离线缓存技术解决离线难题HTML5实现应用程序缓存(Application Cache)
- html5 Canvas画图教程(7)—canvas里画曲线之quadraticCurveTo方法html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- html5 Canvas画图教程(6)—canvas里画曲线之arcTo方法html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- html5 Canvas画图教程(5)—canvas里画曲线之arc方法html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- html5 Canvas画图教程(4)—未闭合的路径及渐变色的填充方法html5 canvas实现交互式彩色渐变背景动画特效源码html5 canvas绘制的圆形气泡渐变背景动画特效源码HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例HTML5 canvas实现渐变色圆形进度条特效源码html5使用canvas实现的圆形渐变进度条加载动画特效源码使用javascript和HTML5 Canvas画的四渐变色播放按钮效果html5 canvas绘制放射性渐变色效果
- html5 Canvas画图教程(2)—画直线与设置线条的样式如颜色/端点/交汇点html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- html5 Canvas画图教程(1)—画图的基本常识html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- 几个解决兼容IE6\7\8不支持html5标签的几个方法HTML5之HTML元素扩展(上)—新增加的元素及使用概述让IE6支持HTML5元素的方法检测浏览器是否支持html5视频的代码html5 canvas-1.canvas介绍(hello canvas)html5 浏览器支持 如何让所有的浏览器都支持HTML5标签样式input file上传文件样式支持html5的浏览器解决方案让IE支持HTML5的方法IE支持HTML5的解决方法如何让IE9以下版本(ie6/7/8)认识html5元素
- 天天酷跑不作弊高分5550米技巧攻略 天天酷跑不作弊高分心得_手机游戏_游戏攻略_
- 天天飞车金皇冠获得方法及高分技巧攻略 天天飞车金皇冠怎么获得_手机游戏_游戏攻略_