-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.js
66 lines (47 loc) · 1.41 KB
/
script.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
function log(message) {
console.log('>' + message)
}
/*.........................*/
const cards = document.querySelectorAll('.card')
const dropzones = document.querySelectorAll('.dropzone')
cards.forEach(card => {
card.addEventListener('dragstart', dragstart)
card.addEventListener('drag', drag)
card.addEventListener('dragend', dragend)
})
function dragstart() {
//log('DRAG start')
dropzones.forEach( dropzone => dropzone.classList.add('highlight'))
this.classList.add('is-dragging')
}
function drag() {
//log('DRAG')
}
function dragend() {
//log('DRAG end')
dropzones.forEach( dropzone => dropzone.classList.remove('highlight'))
this.classList.remove('is-dragging')
}
/* lugar onde solto os cartões: DROPZONE */
dropzones.forEach(dropzone => {
dropzone.addEventListener('dragenter', dragenter)
dropzone.addEventListener('dragover', drageover)
dropzone.addEventListener('dragleave', drageleave)
dropzone.addEventListener('drop', drop)
})
function dragenter() {
//log('DROPZONE: Enter in zone')
}
function drageover() {
this.classList.add('over')
//aqui ele pega o cartão que está sendo arrastado
const cardBeingDragged = document.querySelector('.is-dragging')
this.appendChild(cardBeingDragged)
}
function drageleave() {
//log('DROPZONE: Leave')
this.classList.remove('over')
}
function drop() {
//log('DROPZONE: Lropped')
}