Pārlūkot izejas kodu

Queries focusable nodes every time since they may be changed manually.

NaotoshiFujita 3 gadi atpakaļ
vecāks
revīzija
905e083047
2 mainītis faili ar 7 papildinājumiem un 8 dzēšanām
  1. 1 2
      dist/js/splide.js
  2. 6 6
      src/js/components/Slides/Slide.ts

+ 1 - 2
dist/js/splide.js

@@ -839,7 +839,6 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
     var styles = getAttribute(slide, "style");
     var isClone = slideIndex > -1;
     var container = child(slide, "." + CLASS_CONTAINER);
-    var focusableNodes = queryAll(slide, options.focusableNodes || "");
     var destroyed;
 
     function mount() {
@@ -916,7 +915,7 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
 
       setAttribute(slide, ARIA_HIDDEN, hidden || "");
       setAttribute(slide, TAB_INDEX, !hidden && options.slideFocus ? 0 : "");
-      setAttribute(focusableNodes || [], TAB_INDEX, hidden ? -1 : "");
+      setAttribute(queryAll(slide, options.focusableNodes || ""), TAB_INDEX, hidden ? -1 : "");
 
       if (visible !== hasClass(slide, CLASS_VISIBLE)) {
         toggleClass(slide, CLASS_VISIBLE, visible);

+ 6 - 6
src/js/components/Slides/Slide.ts

@@ -1,6 +1,7 @@
 import {
   ALL_ATTRIBUTES,
-  ARIA_CONTROLS, ARIA_CURRENT,
+  ARIA_CONTROLS,
+  ARIA_CURRENT,
   ARIA_HIDDEN,
   ARIA_LABEL,
   ARIA_ROLEDESCRIPTION,
@@ -89,10 +90,9 @@ export function Slide( Splide: Splide, index: number, slideIndex: number, slide:
   const { Components, root, options } = Splide;
   const { isNavigation, updateOnMove, i18n } = options;
   const { resolve } = Components.Direction;
-  const styles         = getAttribute( slide, 'style' );
-  const isClone        = slideIndex > -1;
-  const container      = child( slide, `.${ CLASS_CONTAINER }` );
-  const focusableNodes = queryAll( slide, options.focusableNodes || '' );
+  const styles    = getAttribute( slide, 'style' );
+  const isClone   = slideIndex > -1;
+  const container = child( slide, `.${ CLASS_CONTAINER }` );
 
   /**
    * Turns into `true` when the component is destroyed.
@@ -205,7 +205,7 @@ export function Slide( Splide: Splide, index: number, slideIndex: number, slide:
 
     setAttribute( slide, ARIA_HIDDEN, hidden || '' );
     setAttribute( slide, TAB_INDEX, ! hidden && options.slideFocus ? 0 : '' );
-    setAttribute( focusableNodes || [], TAB_INDEX, hidden ? -1 : '' );
+    setAttribute( queryAll( slide, options.focusableNodes || '' ), TAB_INDEX, hidden ? -1 : '' );
 
     if ( visible !== hasClass( slide, CLASS_VISIBLE ) ) {
       toggleClass( slide, CLASS_VISIBLE, visible );