Hallo,
Ik probeer Javascript te leren, en ik heb de volgende code geschreven om een divje in te laten faden en out te laten faden:
Nu faden de DIVjes wel uit als ik eroverheen ga, maar als ik mijn muis eraf haal dan krijgt de opacity een waarde van 0.01 (dus hij vuurt 1x af) maar daarna gaat hij niet verder omhoog, maar op de console komt er wel een bericht van de interval
.
Ik heb echt geen idee wat er aan de hand is, dus help me alsjeblieft
.
Ik probeer Javascript te leren, en ik heb de volgende code geschreven om een divje in te laten faden en out te laten faden:
HTML: index.html
1
2
3
4
5
6
7
8
9
10
11
| <!doctype html> <head> <title>test</title> </head> <body> <div style="background-color:#FF0000;width:100px;height:100px;"></div> <div style="background-color:#FF0000;width:100px;height:100px;"></div> <div style="background-color:#FF0000;width:100px;height:100px;"></div> </body> <script src="script.js"></script> </html> |
JavaScript: 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
| var addEvent = (function() { if (document.addEventListener) { return function(elem, event, func) { elem.addEventListener(event, func, false); } } else if(document.attachEvent) { return function(elem, event, func) { elem.attachEvent("on"+event, func); } } })(); function fadeIn(e, duration) { time = duration/100; if(e.getAttribute("animInterval")) clearInterval(e.getAttribute("animInterval")); console.log("fadeInadded"); animInterval = setInterval(function() { console.log("fadeInTerval"); e.style.opacity += 0.01; if ((e.style.opacity)>=1){ e.style.opacity = 1; clearInterval(e.getAttribute("animInterval")); } },time); e.setAttribute("animInterval", animInterval); } function fadeOut(e, duration) { time = duration/100; if(e.getAttribute("animInterval")) clearInterval(e.getAttribute("animInterval")); console.log("fadeOutadded"); animInterval = setInterval(function() { console.log("fadeOuterval"); e.style.opacity -= 0.01; if ((e.style.opacity)<=0){ e.style.opacity = 0; clearInterval(e.getAttribute("animInterval")); } },time); e.setAttribute("animInterval", animInterval); } var elements = document.getElementsByTagName("div"); for(i=0;i<elements.length;i++) { e = elements[i]; if (!e.style.opacity){ e.style.opacity=1; } addEvent(e, "mouseover", function(){fadeOut(this, 100)}); addEvent(e, "mouseout", function(){fadeIn(this, 100)}); } |
Nu faden de DIVjes wel uit als ik eroverheen ga, maar als ik mijn muis eraf haal dan krijgt de opacity een waarde van 0.01 (dus hij vuurt 1x af) maar daarna gaat hij niet verder omhoog, maar op de console komt er wel een bericht van de interval
Ik heb echt geen idee wat er aan de hand is, dus help me alsjeblieft