1 | $(function(){ |
---|
2 | stoplabel = {"de": "Animation stoppen", "en": "stop animation"}; |
---|
3 | startlabel = {"de": "Animation starten", "en": "start animation"}; |
---|
4 | repeatlabel = {"de": "Animation wiederholen", "en": "repeat animation"}; |
---|
5 | |
---|
6 | lang = t29.conf.lang; |
---|
7 | |
---|
8 | var slider = new Array(); |
---|
9 | slider[1] = new Object(); |
---|
10 | slider[1].min = 0; |
---|
11 | slider[1].max = 100; |
---|
12 | slider[1].val = 0; |
---|
13 | slider[1].playerStepTimeout = 100; // ms |
---|
14 | slider[1].playerStepDistance = 1.6; // in min/max/val-Einheiten! |
---|
15 | slider[1].playerStopLabel = stoplabel[lang]; |
---|
16 | slider[1].playerStartLabel = startlabel[lang]; |
---|
17 | slider[1].playerRepeatLabel = repeatlabel[lang]; |
---|
18 | slider[1].playerAutoReverse = false; |
---|
19 | slider[1].playerAutoStart = true; |
---|
20 | slider[1].playerRepeatFromMin = true; |
---|
21 | slider[1].onchange = setTransparency; |
---|
22 | }); |
---|
23 | |
---|
24 | function setTransparency(val, blubb) { |
---|
25 | val = val / 100; // normierung auf [0,1] |
---|
26 | // bereits ab 0.75 ist der Kasten nicht mehr zu sehen |
---|
27 | setOpacity("zu", -val/0.75 + 1); |
---|
28 | // ab 0.75 erscheint die Beschriftung, hoch 3 potenziert |
---|
29 | setOpacity("beschriftung", Math.pow(val - 0.75, 3)*64 ); |
---|
30 | // alternativ ein linearer Zuwachs: |
---|
31 | //setOpacity("beschriftung", (val-0.75)*4 ); |
---|
32 | //document.getElementById("zu").style.opacity = 1-val; |
---|
33 | //document.getElementById("beschriftung").style.opacity = val / 2; |
---|
34 | } |
---|
35 | |
---|
36 | function setOpacity(id, value) { |
---|
37 | if(value >= 1) value = 1.0; |
---|
38 | if(value <= 0) value = 0; |
---|
39 | document.getElementById(id).style.opacity = value; |
---|
40 | if(document.all) { |
---|
41 | // IE 7 kann (immer!) noch kein opacity, daher ein |
---|
42 | // haessliches workaround: |
---|
43 | document.getElementById(id).style.setAttribute("filter", "alpha(opacity="+Math.round(100*value)+")", 0); |
---|
44 | if(value == 1.0) |
---|
45 | // der filter zerschiesst alpha-Transparenz -- noch ein workaround |
---|
46 | document.getElementById(id).style.removeAttribute("filter", 0); |
---|
47 | } |
---|
48 | } |
---|