1、重点目标区域:
<style>
*{
margin: 0;
padding: 0;
}
.a{
position: absolute;
width: 100px;
height: 100px;
background-color: #abcdef;
}
.target{
position: absolute;
width: 200px;
height: 200px;
border: 1px solid black;
left: 600px;
}
</style>
</head>
<body>
<div class="a" draggable="true"></div>
<div class="target"></div>
<script>
var oDragDiv = document.getElementsByClassName('a')[0];
oDragDiv.ondragstart = function (e) {
}
oDragDiv.ondragend = function (e) {
console.log("end");
}
// ****目标区域****
var oDragTarget = document.getElementsByClassName('target')[0];
oDragTarget.ondragenter = function(e) {//不是元素图形进入就触发的,而是拖拽的鼠标进入才触发的
console.log(e);
}
oDragTarget.ondragover = function(e) {
// console.log(e);
e.preventDefault();
}
oDragTarget.ondragleave = function (e) {
}
oDragTarget.ondrop =function () { //所有的标签元素,当拖拽周期结束时,默认事件是回到原处
//如果要执行ondrop事件,那就在ondragover上阻止默认事件:e.preventDefault()
//事件是由行为触发的,但是一个行为可以不止触发一个事件
console.log('drop');
/**ondragover --> 回到原处(默认)
--> 执行drop事件
A->B(阻止)->C(最终被阻止)
*/
}
</script>
</body>