• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5讲解之拖拽事件dragstart、drag和dragend

HTML5讲解之拖拽事件dragstart、drag和dragend

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含dragstart,HTML5,drag等相关知识,匿名希望在学习及工作中可以帮助到您
[导读] 拖拽事件  通过拖拽事件,咱们就可以控制拖拽很多东西了。其中什么元素或者是哪里发生了拖拽事件是最关键的。有些事件是在被拖动的元素上触发,有些事件是在放置目标上触发的。拖动某元素时候,触发的事件有:

拖拽事件

  通过拖拽事件,咱们就可以控制拖拽很多东西了。其中什么元素或者是哪里发生了拖拽事件是最关键的。有些事件是在被拖动的元素上触发,有些事件是在放置目标上触发的。拖动某元素时候,触发的事件有:dragstart事件、drag事件和dragend事件。

  按下鼠标键并开始移动鼠标的时候,会在被拖拽的元素上触发dragstart事件。这时候光标变成”不能放”符号(圆环中有一条反斜线),表示不能把元素放在自己上门。拖拽开始时,可以通过ondragstart事件处理程序运行JavaScript代码。

  触发dragstart事件后,随即会触发drag事件,而在元素被拖动期间会持续触发drag事件。这个事件与mousemove和touchmove事件类似。当拖动停止时(无论把元素放到了有效的放置目标,还是放到了无效的放置目标上),都会发生dragend事件。

  上面说的三个事件的目标都是被拖动的元素触发。默认情况下,浏览器不会再拖动期间改变被拖动元素的外观。但是可以自行修改。不过,大多数浏览器会为正被拖动的元素创建一个半透明的副本,这个副本始终跟随光标移动。当某个元素被拖动到一个有效的放置目标的时候,会触发的事件有:dragenter事件、dragover事件和dragleave或者drop事件。

  只要有元素被拖动到放置目标上,就会触发dragenter事件(类似于mouseover事件)。紧随其后的是dragover事件,而且在被拖动的元素还在放置目标的范围内移动是,会连续触发dragover事件。如果元素被拖出放置目标,dragover事件不再发生,但是会触发dragleave事件(类似于mouseout事件)。如果元素被放到了放置目标中会触发drop事件而不是dragleave事件。dragenter事件、dragover事件和dragleave或者drop事件的目标都是作为放置目标的元素。

  自定义放置目标

  在拖动元素经过某些无效放置目标的时候,可以看到一种特殊鼠标手势(圆环中一条反斜线),表示不能放置。虽然所有元素都支持放置目标事件,但是这些元素默认是不允许放置的。如果拖动元素经过不允许放置的元素,无论用户如何操作,都不会发生drop事件。不过,你可以把任何元素变成有效的放置目标,方法是重写dragenter和dragover事件的默认行为。

  重写了默认行为之后,就会发现当拖动着元素移动到放置目标上的时候,光标变成允许放置的符号。在Firefox 3.5+中,放置事件的默认行为是打开被放到放置目标上的url。如果是把图像拖到放置目标上,页面就会转向图像文件。如果是把文本拖放到放置目标上,则会导致无效url错误。所以为了让Firefox支持政正常的拖放,还要取消drop事件的默认行为,阻止打开拖拽元素的URL。小例子如下

  HTML代码

\

  CSS代码

\

  JavaScript代码

QQ截图20170810095024.png

以上就是HTML5讲解之拖拽事件dragstart、drag和dragend的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • HTML5讲解之拖拽事件dragstart、drag和dragend

相关文章

  • 2017-08-06浅谈基于HTML5的在线视频播放方案
  • 2018-12-03为什么有些网站的版权不用©而用©?
  • 2018-12-03HTML5实践-使用CSS实现弹性视频的代码分享
  • 2018-12-03H5的所有元素及基本语法归纳
  • 2018-12-03HTML5 Canvas的基本用法介绍
  • 2018-12-03HTML5 用来手机建站能不能实现在各种设备上的良好展现?
  • 2017-08-06HTML5的结构和语义(2):结构
  • 2018-12-03SVG(可缩放矢量图形)视区盒属性viewbox与preserveAspectRatio
  • 2018-12-03HTML5之8 __Canvas 文本
  • 2018-12-03HTML5 canvas实现中奖转盘的实例代码

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • HTML5实践-图片设置成灰度图
    • HTML5 语音搜索(淘宝店语音搜素)_html5教程技巧
    • 腾讯技术干货!做一个让人闻风丧胆的HTML5页面
    • 纯js和CSS3炫酷自动幻灯片特效
    • 在线演示一个全屏切换效果实例
    • Web时代变迁及html5与html4的区别
    • 总结Html5表单(二) input type 各种输入, 各种用户选择,上传
    • html5 canvas中绘制字体与图片以及图形模糊问题解决
    • 微信端html5页面如何调用分享接口
    • App三年内是否将被HTML5顶替彻底消失?

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有