From 30dc0fdaa597157cb458ea6d53f127d462764c53 Mon Sep 17 00:00:00 2001 From: Jordan Scales Date: Mon, 3 Oct 2016 10:27:32 -0400 Subject: [PATCH] Ignore hidden links for LinkText plugin - fixes #101 --- plugins/link-text/index.js | 5 +++++ test/link-text-test.js | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/plugins/link-text/index.js b/plugins/link-text/index.js index ccf09f71..1520dbc3 100644 --- a/plugins/link-text/index.js +++ b/plugins/link-text/index.js @@ -68,6 +68,11 @@ class LinkTextPlugin extends Plugin { return; } + // Ignore hidden links + if (axs.utils.isElementOrAncestorHidden(el)) { + return; + } + // Extract the text alternatives for this element: including // its text content, aria-label/labelledby, and alt text for // images. diff --git a/test/link-text-test.js b/test/link-text-test.js index 7396e073..ed6560e0 100644 --- a/test/link-text-test.js +++ b/test/link-text-test.js @@ -118,4 +118,17 @@ describe("Link text plugin", function() { assert($("#empty-link-with-unclear-label").hasLabel()); assert($("#empty-link-with-unclear-labelledby").hasLabel()); }); + + it("should not fail on hidden links", function() { + document.body.innerHTML = ` + + `; + + plugin.run(); + assert(!$("#hidden-link").hasLabel()); + }); });