annotate core/misc/details-aria.es6.js @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 129ea1e6d783
children
rev   line source
Chris@0 1 /**
Chris@0 2 * @file
Chris@0 3 * Add aria attribute handling for details and summary elements.
Chris@0 4 */
Chris@0 5
Chris@17 6 (function($, Drupal) {
Chris@0 7 /**
Chris@0 8 * Handles `aria-expanded` and `aria-pressed` attributes on details elements.
Chris@0 9 *
Chris@0 10 * @type {Drupal~behavior}
Chris@0 11 */
Chris@0 12 Drupal.behaviors.detailsAria = {
Chris@0 13 attach() {
Chris@17 14 $('body')
Chris@17 15 .once('detailsAria')
Chris@17 16 .on('click.detailsAria', 'summary', event => {
Chris@17 17 const $summary = $(event.currentTarget);
Chris@17 18 const open =
Chris@17 19 $(event.currentTarget.parentNode).attr('open') === 'open'
Chris@17 20 ? 'false'
Chris@17 21 : 'true';
Chris@0 22
Chris@17 23 $summary.attr({
Chris@17 24 'aria-expanded': open,
Chris@17 25 'aria-pressed': open,
Chris@17 26 });
Chris@0 27 });
Chris@0 28 },
Chris@0 29 };
Chris@17 30 })(jQuery, Drupal);