-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
60 lines (46 loc) · 1.86 KB
/
index.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
/**
* Created by joana on 04/06/2017.
*/
function load_letters() {
var img_out = "";
var letters = $("#images");
var word = $("#word").val();
var wordLength = word.length;
for (var i = 0; i < wordLength; i++) {
var letter = word[i].toUpperCase();
if (letter === "A" || letter === "E" || letter === "I" || letter === "O" || letter === "U") {
img_out += "<img src='./res/" + letter + ".png' class='letra " + letter + " correct'/>";
} else {
img_out += "<img src='./res/" + letter + ".png' class='letra " + letter + " incorrect'/>";
}
}
$(letters).append(img_out);
$('.letra ').each(function () {
handleTouch(this);
});
}
function handleTouch(letter) {
var mc = new Hammer.Manager(letter, {});
mc.add(new Hammer.Pan({direction: Hammer.DIRECTION_ALL, threshold: 0}));
mc.on("pan", function (event) {
var elem = event.target;
$(elem).css({'transform': 'translate(' + event.deltaX + 'px,' + event.deltaY + 'px)'});
if (event.isFinal) {
$(event.target).css({'transform': 'translate(0,0)'});
var dropEl = document.elementFromPoint(event.pointers[0].pageX, event.pointers[0].pageY);
console.log('dropped on', dropEl);
var elemClass = elem.getAttribute("class").split(" ");
var elemChecker = elemClass[2];
var dropElemId = dropEl.getAttribute('id');
if (dropElemId === "targetDiv") {
if (elemChecker === "correct") {
// processar acerto
elem.setAttribute("class", "invisible");
dropEl.style.background = "green";
} else {
dropEl.style.background = "red";
}
}
}
});
}