* Template wie eingefügt anlegen
* dem Accordion-Idem die Klasse "acc_open" mit auf den Weg geben
Hinweis: keine Prüfung, ob Klasse mehrmals zugewiesen
PHP-Code:
<script type="text/javascript">
/* <![CDATA[ */
window.addEvent('domready', function() {
var myAcc = new Accordion($$('div.toggler'), $$('div.accordion'), {
display: false,
opacity: false,
alwaysHide: true,
onActive: function(toggler, elem) {
elem.setProperty('aria-hidden', 'false');
toggler.addClass('active');
toggler.getNext('div').setStyle('visibility', 'visible').fade('in');
toggler.setProperty('aria-expanded', 'true');
return false;
},
onBackground: function(toggler, elem) {
elem.setProperty('aria-hidden', 'true');
toggler.removeClass('active');
toggler.getNext('div').fade('out').setStyle('visibility', 'hidden');
toggler.setProperty('aria-expanded', 'false');
return false;
}
});
$$('div.toggler').each(function(elem) {
elem.setProperty('role', 'tab');
elem.setProperty('tabindex', 0);
elem.addEvents({
'keypress': function(event) {
if (event.code == 13) {
this.fireEvent('click');
}
},
'focus': function() {
this.addClass('hover');
},
'blur': function() {
this.removeClass('hover');
},
'mouseenter': function() {
this.addClass('hover');
},
'mouseleave': function() {
this.removeClass('hover');
}
});
});
$$('div.ce_accordion').each(function(elem) {
elem.setProperty('role', 'tablist');
});
$$('div.accordion').each(function(elem) {
elem.setProperty('role', 'tabpanel');
});
// item über klasse öffnen:
$$('div.ce_accordion').each(function(elem, index) {
if(elem.hasClass('acc_open')) {
myAcc.display(index)
}
});
});
/* ]]> */
</script>
zonky
Lesezeichen