]> git.ipfire.org Git - thirdparty/foundation/foundation-sites.git/commitdiff
Toggle aria-expanded on all offcanvas triggers 8688/head
authorGeoff Appleby <geoff.a@myplanet.com>
Wed, 27 Apr 2016 22:20:52 +0000 (15:20 -0700)
committerGeoff Appleby <geoff.a@myplanet.com>
Wed, 27 Apr 2016 22:23:21 +0000 (15:23 -0700)
js/foundation.offcanvas.js

index cca11d20e7e385e19c5275e5d6f79ca495938812..5e7b3cf8fa7bf175be5facd14504e6adc22d473b 100644 (file)
@@ -22,6 +22,7 @@ class OffCanvas {
     this.$element = element;
     this.options = $.extend({}, OffCanvas.defaults, this.$element.data(), options);
     this.$lastTrigger = $();
+    this.$triggers = $();
 
     this._init();
     this._events();
@@ -40,7 +41,7 @@ class OffCanvas {
     this.$element.attr('aria-hidden', 'true');
 
     // Find triggers that affect this element and add aria-expanded to them
-    $(document)
+    this.$triggers = $(document)
       .find('[data-open="'+id+'"], [data-close="'+id+'"], [data-toggle="'+id+'"]')
       .attr('aria-expanded', 'false')
       .attr('aria-controls', id);
@@ -178,6 +179,8 @@ class OffCanvas {
       //   _this._stick();
       // }
     });
+
+    this.$triggers.attr('aria-expanded', 'true');
     this.$element.attr('aria-hidden', 'false')
         .trigger('opened.zf.offcanvas');
 
@@ -186,7 +189,7 @@ class OffCanvas {
     }
 
     if (trigger) {
-      this.$lastTrigger = trigger.attr('aria-expanded', 'true');
+      this.$lastTrigger = trigger;
     }
 
     if (this.options.autoFocus) {
@@ -275,7 +278,7 @@ class OffCanvas {
       this.$exiter.removeClass('is-visible');
     }
 
-    this.$lastTrigger.attr('aria-expanded', 'false');
+    this.$triggers.attr('aria-expanded', 'false');
     if (this.options.trapFocus) {
       $('[data-off-canvas-content]').removeAttr('tabindex');
     }