accessible

Creates an accessible cloned element that preserves the structure of the original split element.

text.split(target, { accessible: true });

Accepts

Boolean

Default

true

accessible code example

import { createTimeline, text, stagger } from 'animejs';

const [ $button ] = utils.$('button');
const split = text.split('p', { debug: true });
const $accessible = split.$target.firstChild;

$accessible.style.cssText = `
  opacity: 0;
  position: absolute;
  color: var(--hex-green-1);
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  outline: currentColor dotted 1px;
`;

const showAccessibleClone = createTimeline({
  defaults: { ease: 'inOutQuad' },
})
.add($accessible, {
  opacity: 1,
  z: '-2rem',
}, 0)
.add('p', {
  rotateX: 0,
  rotateY: 60
}, 0)
.add(split.words, {
  z: '6rem',
  opacity: .75,
  outlineColor: { from: '#FFF0' },
  duration: 750,
  delay: stagger(40, { from: 'random' })
}, 0)
.init();

const toggleAccessibleClone = () => {
  showAccessibleClone.alternate().resume();
}
 
$button.addEventListener('click', toggleAccessibleClone);
<div class="large centered row">
  <p class="text-xl">Split text by words.<br>単語ごとに分割します。</p>
</div>
<div class="medium row">
  <fieldset class="controls">
    <button>Toggle accessible</button>
  </fieldset>
</div>
.docs-demo.is-active #text-split-textsplitter-settings-accessible .docs-demo-template {
  opacity: 0;
}

#text-split-textsplitter-settings-accessible .large.row {
  perspective: 600px;
}

#text-split-textsplitter-settings-accessible .text-xl {
  transform-style: preserve-3d;
}