JavaScript:
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
| <script type="text/javascript"> window.addEvent('domready', function() { if ($chk('accordion')) { var openElement = Cookie.get("cookie"); var accordion = new Accordion('h3.atStart', 'div.atStart', { onActive: function(toggler, element){ Cookie.set("cookie", toggler.getProperty('val'), {duration: 2}); }, openAll: true, alwaysHide: true, }, $('accordion')); $$('h3.atStart').each(function(element,i) { console.log('_________________________________'); console.log('waarde element: '+element.getProperty('val')); console.log('waarde open element: '+openElement); console.log('Nummer loop: '+ i); if (openElement == element.getProperty('val')) console.log('Nummer display:'+ i); accordion.display(i); }); } }); </script> |
Goedenmiddag, ik zit met het volgende probleem. Ik ben dmv een cookie de status van de accordion aan het bewaren om de gewenste kop te openen op een andere pagina. Hieronder het script wat ik gevonden heb, aangepast.
In princiepe werkt het script wel. Hij bewaart welke kop er als laatst is aangeklikt en zet die in een cookie om hem vervolgens weer uit te lezen op de volgende pagina.
Dit is mijn output in FireBug:
Nu moet hij nummer 1 (0,1,2 enz) gaan openen. Maar:_________________________________
waarde element: 13
waarde open element: 14
Nummer loop: 0
_________________________________
waarde element: 14
waarde open element: 14
Nummer loop: 1
Nummer display:1
_________________________________
waarde element: 15
waarde open element: 14
Nummer loop: 2
_________________________________
waarde element: 16
waarde open element: 14
Nummer loop: 3
1. Hij opent hem soms wel soms niet.
2. Je moet 2 keer op het menu klikken om het goed op te slaan in de cookie. En misschien licht het aan mij maar ik zie niet waardoor dat veroorzaakt wordt.
Nevermind: deze oplossing is beter: http://www.virtual-gadjo.com/test/acctests.html
Schiet tussen de palen en je scoort!