From e30db54280669be005b336d9b1ebd39cdfc3d7d1 Mon Sep 17 00:00:00 2001 From: Marius Olbertz Date: Sat, 30 Dec 2017 23:04:23 +0100 Subject: [PATCH] Fix Drilldown behavior with parent link when using keyboard. Fixes #10803 --- js/foundation.drilldown.js | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/js/foundation.drilldown.js b/js/foundation.drilldown.js index 003ef3d80..5f7d2ca56 100644 --- a/js/foundation.drilldown.js +++ b/js/foundation.drilldown.js @@ -226,7 +226,7 @@ class Drilldown extends Plugin { if ($element.is(_this.$submenuAnchors)) { _this._show($element.parent('li')); $element.parent('li').one(transitionend($element), function(){ - $element.parent('li').find('ul li a').filter(_this.$menuItems).first().focus(); + $element.parent('li').find('ul li a').not('.js-drilldown-back a').first().focus(); }); return true; } @@ -258,7 +258,9 @@ class Drilldown extends Plugin { } }, open: function() { - if (!$element.is(_this.$menuItems)) { // not menu item means back button + if (_this.options.parentLink && $element.attr('href')) { // Link with href + return false; + } else if (!$element.is(_this.$menuItems)) { // not menu item means back button _this._hide($element.parent('li').parent('ul')); $element.parent('li').parent('ul').one(transitionend($element), function(){ setTimeout(function() { @@ -266,10 +268,10 @@ class Drilldown extends Plugin { }, 1); }); return true; - } else if ($element.is(_this.$submenuAnchors)) { + } else if ($element.is(_this.$submenuAnchors)) { // Sub menu item _this._show($element.parent('li')); $element.parent('li').one(transitionend($element), function(){ - $element.parent('li').find('ul li a').filter(_this.$menuItems).first().focus(); + $element.parent('li').find('ul li a').not('.js-drilldown-back a').first().focus(); }); return true; } -- 2.47.3