Hier kurz die Lösung zu meinem Problem. Der nachfolgende Code muss im j_accordion.html5 Template eingesetzt werden.
Im Anschluss einfach dem Artikel (welcher das Akkordeon enthält) die CSS-Klasse acco geben. Anschließend kann ich die Akkordeons einzeln über mehrere Artikel ansprechen.
Aufbau wie folgt:
- Artikel (Klasse acco)
- Akkordeon Anfang
- Inhalt
- Akkordeon Ende
usw.
PHP-Code:
<script src="<?php echo TL_ASSETS_URL; ?>assets/jquery/ui/<?php echo JQUERY_UI; ?>/jquery-ui.min.js"></script>
<script>
(function($) {
$(document).ready(function() {
$('.acco').accordion({
// Put custom options here
heightStyle: 'content',
header: 'div.toggler',
collapsible: true,
});
var activate = function(tog) {
var tgs = $('div.toggler');
tgs.removeClass('active');
tog.addClass('active');
tgs.next('div.accordion').attr('aria-hidden', 'true');
tog.next('div.accordion').attr('aria-hidden', 'false');
};
$('div.toggler').focus(function() {
$('div.toggler').attr('tabindex', 0);
$(this).attr('tabindex', -1);
}).blur(function() {
$(this).attr('tabindex', 0);
}).click(function() {
activate($(this));
}).keypress(function(event) {
if (event.keyCode == 13) activate($(this));
});
});
})(jQuery);
</script>
Lesezeichen