diff --git a/lib/checks/keyboard/focusable-content.js b/lib/checks/keyboard/focusable-content.js index 879edbc5af..59defc6ebb 100644 --- a/lib/checks/keyboard/focusable-content.js +++ b/lib/checks/keyboard/focusable-content.js @@ -2,7 +2,7 @@ * Note: * Check if given node contains focusable elements (excluding thyself) */ -const tabbableElements = virtualNode.tabbableElements(); +const tabbableElements = virtualNode.tabbableElements; if (!tabbableElements) { return false; diff --git a/lib/checks/keyboard/focusable-disabled.js b/lib/checks/keyboard/focusable-disabled.js index 365b0c4ddf..6aa69afffb 100644 --- a/lib/checks/keyboard/focusable-disabled.js +++ b/lib/checks/keyboard/focusable-disabled.js @@ -6,7 +6,7 @@ const elementsThatCanBeDisabled = [ 'TEXTAREA' ]; -const tabbableElements = virtualNode.tabbableElements(); +const tabbableElements = virtualNode.tabbableElements; if (!tabbableElements || !tabbableElements.length) { return true; diff --git a/lib/checks/keyboard/focusable-element.js b/lib/checks/keyboard/focusable-element.js index d8abf3cf40..eacb898168 100644 --- a/lib/checks/keyboard/focusable-element.js +++ b/lib/checks/keyboard/focusable-element.js @@ -4,7 +4,7 @@ * - if element is focusable * - if element is in focus order via `tabindex` */ -const isFocusable = virtualNode.isFocusable(); +const isFocusable = virtualNode.isFocusable; let tabIndex = parseInt(virtualNode.actualNode.getAttribute('tabindex'), 10); tabIndex = !isNaN(tabIndex) ? tabIndex : null; diff --git a/lib/checks/keyboard/focusable-not-tabbable.js b/lib/checks/keyboard/focusable-not-tabbable.js index f1dfbe80f5..33d978f2d9 100644 --- a/lib/checks/keyboard/focusable-not-tabbable.js +++ b/lib/checks/keyboard/focusable-not-tabbable.js @@ -6,7 +6,7 @@ const elementsThatCanBeDisabled = [ 'TEXTAREA' ]; -const tabbableElements = virtualNode.tabbableElements(); +const tabbableElements = virtualNode.tabbableElements; if (!tabbableElements || !tabbableElements.length) { return true; diff --git a/lib/commons/dom/get-tabbable-elements.js b/lib/commons/dom/get-tabbable-elements.js index 261adffdf4..e073672567 100644 --- a/lib/commons/dom/get-tabbable-elements.js +++ b/lib/commons/dom/get-tabbable-elements.js @@ -12,7 +12,7 @@ dom.getTabbableElements = function getTabbableElements(virtualNode) { const nodeAndDescendents = axe.utils.querySelectorAll(virtualNode, '*'); const tabbableElements = nodeAndDescendents.filter(vNode => { - const isFocusable = vNode.isFocusable(); + const isFocusable = vNode.isFocusable; let tabIndex = vNode.actualNode.getAttribute('tabindex'); tabIndex = tabIndex && !isNaN(parseInt(tabIndex, 10)) ? parseInt(tabIndex) : null; diff --git a/lib/core/base/virtual-node.js b/lib/core/base/virtual-node.js index 214a58e67f..c2cc1f1b48 100644 --- a/lib/core/base/virtual-node.js +++ b/lib/core/base/virtual-node.js @@ -65,7 +65,7 @@ class VirtualNode { * Determine if the element is focusable and cache the result. * @return {Boolean} True if the element is focusable, false otherwise. */ - isFocusable() { + get isFocusable() { if (!this._cache.hasOwnProperty('isFocusable')) { this._cache.isFocusable = axe.commons.dom.isFocusable(this.actualNode); } @@ -76,7 +76,7 @@ class VirtualNode { * Return the list of tabbable elements for this element and cache the result. * @returns {VirtualNode[]} */ - tabbableElements() { + get tabbableElements() { if (!this._cache.hasOwnProperty('tabbableElements')) { this._cache.tabbableElements = axe.commons.dom.getTabbableElements(this); }