diff options
author | Maarten Schroeven <maarten.schroeven@kbc.be> | 2016-08-18 10:40:56 +0200 |
---|---|---|
committer | Hakim El Hattab <hakim.elhattab@gmail.com> | 2016-10-05 11:54:46 +0200 |
commit | ab33b31f0a2892852903785893a4fa68862aa73d (patch) | |
tree | 2491c4f80e43171ac37394f64f4fc512019852a8 /js | |
parent | 2cf00254a1a696111b0f4a48dda1cac399447193 (diff) | |
download | fosdem-2018-presentation-ab33b31f0a2892852903785893a4fa68862aa73d.tar fosdem-2018-presentation-ab33b31f0a2892852903785893a4fa68862aa73d.tar.gz |
limit text written to the status div
Diffstat (limited to 'js')
-rw-r--r-- | js/reveal.js | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/js/reveal.js b/js/reveal.js index 186b438..b0bc935 100644 --- a/js/reveal.js +++ b/js/reveal.js @@ -554,6 +554,23 @@ } + function getStatusText(node) { + var text = ""; + if(node.nodeType === 3) { //text node + text += node.textContent; + }else { + var isAriaHidden = node.getAttribute('aria-hidden'); + var isDisplayHidden = window.getComputedStyle(node)['display'] === 'none'; + if (isAriaHidden !== 'true' && !isDisplayHidden) { + var children = node.childNodes; + for (var i = 0;i < children.length; i++) { + text += getStatusText(children[i]); + } + } + } + return text; + } + /** * Configures the presentation for printing to a static * PDF. @@ -2256,7 +2273,7 @@ } // Announce the current slide contents, for screen readers - dom.statusDiv.textContent = currentSlide.textContent; + dom.statusDiv.textContent = getStatusText(currentSlide); updateControls(); updateProgress(); @@ -3669,7 +3686,7 @@ element.classList.remove( 'current-fragment' ); // Announce the fragments one by one to the Screen Reader - dom.statusDiv.textContent = element.textContent; + dom.statusDiv.textContent = getStatusText(element); if( i === index ) { element.classList.add( 'current-fragment' ); |