(98)Wangdao.com_第三十天_拖拉事件
拖拉事件
拖拉 drag ,是指用户在某个对象上按下鼠标键不放,拖动它到另一个位置,然后释放鼠标键,将该对象放在那里。
一旦某个元素节点的 draggable 属性设为true,就无法再用鼠标选中该节点内部的 文字 或 子节点 了
- 拖拉的对象:
除了 元素节点 默认不可以拖拉,其他(图片、链接、选中的文字)都是可以直接拖拉的
- 为了让 元素节点 可拖拉,可以将该节点的 draggable 属性设为 true
<div draggable="true">
此区域可拖拉
</div>
图片(<img>)和 链接(<a>)不加这个属性,就可以拖拉。
往往是将 draggable 其设为 false,防止拖拉这两种元素
- 当 元素节点 或 选中的文本 被拖拉时,就会持续触发拖拉事件
drag 拖拉过程中,在被拖拉的节点上持续触发(相隔几百毫秒)。
dragstart 用户开始拖拉时,在被拖拉的节点上触发
该事件的 target 属性是被拖拉的节点。
通常应该在这个事件的监听函数中,指定拖拉的数据。
dragend 拖拉结束时(释放鼠标键或按下 ESC 键)在被拖拉的节点上触发
该事件的 target 属性是被拖拉的节点。
它与 dragstart 事件,在同一个节点上触发。
不管拖拉是否跨窗口,或者中途被取消,dragend事件总是会触发的。
- 在 某节点 触发
dragenter 拖拉进入 某节点 时,在 某节点 上触发一次
该事件的 target 属性是 某节点。
通常应该在这个事件的监听函数中,指定是否允许在 某节点 放下(drop)拖拉的数据。
如果 某节点 没有该事件的监听函数,或者 监听函数不执行任何操作,就意味着不允许在当前节点放下数据。
在视觉上显示拖拉进入当前节点,也是在这个事件的监听函数中设置。
dragover 拖拉到 某节点 上方时,在 某节点 上持续触发(相隔几百毫秒)
该事件的 target 属性是 某节点 。
该事件与 dragenter 事件的区别是
- dragenter事件在进入该节点时触发
- 只要没有离开这个节点,dragover 事件会持续触发。
dragleave 拖拉操作离开 某节点 范围时,在 某节点 上触发一次
该事件的 target 属性是当前节点
如果要在视觉上显示拖拉离开操作当前节点,就在这个事件的监听函数中设置。
drop 被拖拉的节点或选中的文本,释放到 某节点 时,在 某节点 上触发
注意:
- 如果 某节点 不允许 drop,即使在该节点上方松开鼠标键,也不会触发该事件
- 如果用户按下 ESC 键,取消这个操作,也不会触发该事件
该事件的监听函数负责取出拖拉数据,并进行相关处理
- 实例:
动态改变被拖动节点的背景色
div.addEventListener('dragstart', function (e) {
this.style.backgroundColor = 'red';
}, false); div.addEventListener('dragend', function (e) {
this.style.backgroundColor = 'green';
}, false);
(98)Wangdao.com_第三十天_拖拉事件的更多相关文章
- (97)Wangdao.com_第三十天_触摸事件
触摸事件 只有触摸屏才会引发这一类事件 触摸事件 和 鼠标事件 同时触发,即使这个时候并没有用到鼠标. 这是为了让那些只定义鼠标事件.没有定义触摸事件的代码,在触摸屏的情况下仍然能用. 如果想避免这种 ...
- (93)Wangdao.com_第二十六天_鼠标事件
鼠标事件 与鼠标相关的事件,继承了 MouseEvent 接口 分类: click 按下鼠标(通常是按下主按钮)时触发. mousedown 首先触发,mouseup 接着 ...
- Jmeter(三十六)_运行过程中改变负载
顾名思义,jmeter在做性能测试时,可以在不停止脚本的情况下修改负载压力,达到期望的测试效果.我们将通过Constant Throughput Timer(吞吐量计时器)和Beanshell服务器来 ...
- Jmeter(三十五)_分布式
jmeter分布式简单步骤说明: 1:添加远程服务器IP到配置文件 在JMETER_HOME / bin / jmeter.properties中,找到名为“ remote_hosts ” 的属性,并 ...
- Jmeter(三十五)_精确实现网页爬虫
Jmeter实现了一个网站文章的爬虫,可以把所有文章分类保存到本地文件中,并以文章标题命名 它原理就是对网页提交一个请求,然后把返回的所有值提取出来,利用ForEach控制器去实现遍历.下面来介绍一下 ...
- Jmeter(三十二)_搭建本地接口自动化环境
我们在学习接口自动化的时候,最理想的状态是在公司有项目可以操作.大部分时候我们并没有可以练习的项目,因此练习接口无从谈起,只能找一些开放的api来练一练,但是这样并不能提高我们的技术.因此我们需要搭建 ...
- SpringBoot | 第三十二章:事件的发布和监听
前言 今天去官网查看spring boot资料时,在特性中看见了系统的事件及监听章节.想想,spring的事件应该是在3.x版本就发布的功能了,并越来越完善,其为bean和bean之间的消息通信提供了 ...
- 学习之路三十九:新手学习 - Windows API
来到了新公司,一开始就要做个程序去获取另外一个程序里的数据,哇,挑战性很大. 经过两周的学习,终于搞定,主要还是对Windows API有了更多的了解. 文中所有的消息常量,API,结构体都整理出来了 ...
- 第三十六节,目标检测之yolo源码解析
在一个月前,我就已经介绍了yolo目标检测的原理,后来也把tensorflow实现代码仔细看了一遍.但是由于这个暑假事情比较大,就一直搁浅了下来,趁今天有时间,就把源码解析一下.关于yolo目标检测的 ...
随机推荐
- mui选择器的坑
mui框架最近比较火,因为在移动端的页面展示效果太好了,web页面相当于APP的效果.连二年级的小明同学都知道了..你别说你不知道哦 但是这毕竟是一个不成熟的框架,维护和解决方案都跟不上,因此新手入坑 ...
- DirectX11 With Windows SDK--01 DirectX11初始化
前言 由于个人觉得龙书里面第4章提供的Direct3D 初始化项目封装得比较好,而且DirectX SDK Samples里面的初始化程序过于精简,不适合后续使用,故选择了以Init Direct3D ...
- 2018-2019-2 实验一 Java开发环境的熟悉
实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA编辑.编译.运行.调试Java程序 实验知识点 1. JVM.JRE.JDK的安装位置与区别: 2. 命令行运行javac:ja ...
- 深入浅出mybatis之返回主键ID
目录 添加单一记录时返回主键ID 在映射器中配置获取记录主键值 获取新添加记录主键字段值 添加批量记录时返回主键ID 获取主键ID实现原理 添加记录后获取主键ID,这是一个很常见的需求,特别是在一次前 ...
- [物理学与PDEs]第1章第1节 引言
1. 电动力学研究的对象是电磁场, 研究电磁场的基本属性---运动规律及它和带电物质的相互作用. 2. 场, 物质的一种存在方式. 3. Maxwell 方程组是电动力学中的基本方程, 是一切有关电磁 ...
- jpa/hibernate @onetomany 使用left join 添加多条件,可以使用过滤器filters (with-clause not allowed on fetched associations; use filters异常信息)
package com.ipinyou.mip.dataAsset.campaignManagement.entity; import com.ipinyou.mip.utils.NumberUtil ...
- Java(6)for循环
一.for循环的使用场合 1.1.while循环——先判断,再循环 while(1.条件表达式){ //2.循环操作 //3.更改循环条件表达式 } 1.2.do…while——先 ...
- pyqt5-按钮基类-QAbstractButton
QAbstractButton 是抽象类 from PyQt5.QtWidgets import QApplication, QWidget,QAbstractButton import sys f ...
- scheduling while atomic 出现的错误
产生这种情况的原因: 1.当中断发生时,出现了调度做法, 2.另一个是spin_lock 里调用sleep, 让出调度, 另外线程又进行spin_lock, 导致死锁. 相关问题的链接 1.为 ...
- 用可配置外部工具的编辑器编译与执行java
用可配置外部工具的编辑器编译与执行java 最近用了everedit.觉得比之前平时用的Editplus有更多的细节与功能要好许多. 这里就写写用everedit编译与执行java的方法. 原理 ja ...