|
patrick@17
|
1 |
// $Id$
|
|
patrick@17
|
2 |
// balade_nature
|
|
patrick@17
|
3 |
|
|
Patrick@124
|
4 |
/*global $: true */
|
|
Patrick@124
|
5 |
/*global $$: true */
|
|
Patrick@124
|
6 |
|
|
patrick@17
|
7 |
var text = null;
|
|
patrick@17
|
8 |
var spot = null;
|
|
patrick@17
|
9 |
var box = null;
|
|
patrick@17
|
10 |
var boxProperty = '';
|
|
patrick@17
|
11 |
|
|
patrick@17
|
12 |
|
|
patrick@17
|
13 |
window.addEvent('domready', function(){
|
|
Patrick@74
|
14 |
// Hotspots
|
|
patrick@17
|
15 |
(function initialize() {
|
|
Patrick@74
|
16 |
$$(".pdocHotspot").each(function(hotspot) {
|
|
Patrick@124
|
17 |
var spot = $(hotspot.get('id') + "s");
|
|
patrick@94
|
18 |
var scenario = hotspot.getElement("span");
|
|
patrick@94
|
19 |
if (spot && scenario) {
|
|
Patrick@74
|
20 |
hotspot.addEvent("click", function() {
|
|
patrick@94
|
21 |
var spot = $(this.get('id') + "s");
|
|
patrick@94
|
22 |
if (spot.getChildren("img")) {
|
|
patrick@94
|
23 |
spot.setStyles({"opacity": 1, "display": "block"});
|
|
patrick@94
|
24 |
} else {
|
|
patrick@94
|
25 |
spot.setStyles({"opacity": 0, "display": "block"});
|
|
patrick@94
|
26 |
spot.tween("opacity", 1);
|
|
patrick@94
|
27 |
}
|
|
Patrick@74
|
28 |
this.setStyle("display", "none");
|
|
Patrick@74
|
29 |
(function() {
|
|
patrick@94
|
30 |
spot.setStyle("display", "none");
|
|
Patrick@74
|
31 |
hotspot.setStyle("display", "block");
|
|
Patrick@74
|
32 |
}).delay(12000);
|
|
Patrick@74
|
33 |
});
|
|
patrick@17
|
34 |
|
|
patrick@94
|
35 |
spot.addEvent("click", function() {
|
|
Patrick@74
|
36 |
this.setStyle("display", "none");
|
|
patrick@94
|
37 |
$(this.get('id').substring(0, this.get('id').length-1))
|
|
Patrick@74
|
38 |
.setStyle("display", "block");
|
|
Patrick@74
|
39 |
});
|
|
patrick@17
|
40 |
}
|
|
patrick@17
|
41 |
});
|
|
Patrick@74
|
42 |
}).delay(100);
|
|
patrick@17
|
43 |
|
|
patrick@17
|
44 |
// Effect: glow
|
|
patrick@17
|
45 |
var effectGlow = $("effectGlow");
|
|
patrick@17
|
46 |
if (effectGlow) {
|
|
patrick@17
|
47 |
text = $("effectGlowText");
|
|
patrick@17
|
48 |
spot = $("effectGlowSpot");
|
|
patrick@17
|
49 |
box = $("effectGlowBox")
|
|
patrick@17
|
50 |
if (typeof box.style.webkitBoxShadow == 'string') {
|
|
patrick@17
|
51 |
boxProperty = 'webkitBoxShadow';
|
|
patrick@17
|
52 |
} else if (typeof box.style.MozBoxShadow == 'string') {
|
|
patrick@17
|
53 |
boxProperty = 'MozBoxShadow';
|
|
patrick@17
|
54 |
} else if (typeof box.style.boxShadow == 'string') {
|
|
patrick@17
|
55 |
boxProperty = 'boxShadow';
|
|
patrick@17
|
56 |
}
|
|
patrick@17
|
57 |
|
|
patrick@17
|
58 |
if (text && spot && box) {
|
|
patrick@17
|
59 |
effectGlow.onmousemove = onMouseMove;
|
|
patrick@17
|
60 |
effectGlow.ontouchmove = function (e) {
|
|
patrick@17
|
61 |
e.preventDefault();
|
|
patrick@17
|
62 |
e.stopPropagation();
|
|
patrick@17
|
63 |
onMouseMove({clientX: e.touches[0].clientX, clientY: e.touches[0].clientY});
|
|
Patrick@124
|
64 |
};
|
|
patrick@17
|
65 |
}
|
|
patrick@17
|
66 |
}
|
|
patrick@17
|
67 |
});
|
|
patrick@17
|
68 |
|
|
patrick@17
|
69 |
|
|
patrick@17
|
70 |
function onMouseMove(e) {
|
|
patrick@17
|
71 |
if (typeof e === 'undefined' || typeof e.clientX === 'undefined') {
|
|
patrick@17
|
72 |
return;
|
|
patrick@17
|
73 |
}
|
|
patrick@17
|
74 |
|
|
patrick@17
|
75 |
var xm = (e.clientX - Math.floor(window.innerWidth / 2)) * 0.4;
|
|
patrick@17
|
76 |
var ym = (e.clientY - Math.floor(window.innerHeight / 3)) * 0.4;
|
|
patrick@17
|
77 |
var d = Math.round(Math.sqrt(xm*xm + ym*ym) / 5);
|
|
patrick@17
|
78 |
text.style.textShadow = -xm + 'px ' + -ym + 'px ' + (d + 10) + 'px black';
|
|
patrick@17
|
79 |
|
|
patrick@17
|
80 |
if (boxProperty) {
|
|
patrick@17
|
81 |
box.style[boxProperty] = '0 ' + -ym + 'px ' + (d + 30) + 'px black';
|
|
patrick@17
|
82 |
}
|
|
patrick@17
|
83 |
|
|
patrick@17
|
84 |
xm = e.clientX - Math.floor(window.innerWidth / 2);
|
|
patrick@17
|
85 |
ym = e.clientY - Math.floor(window.innerHeight / 2);
|
|
patrick@17
|
86 |
spot.style.backgroundPosition = xm + 'px ' + ym + 'px';
|
|
patrick@17
|
87 |
}
|
|
patrick@17
|
88 |
|