1
0
mirror of https://github.com/hakimel/reveal.js.git synced 2025-07-31 20:00:28 +02:00

auto-animate no longer skips matching fragments on adjacent slides

This commit is contained in:
Hakim El Hattab
2024-11-28 14:43:42 +01:00
parent 0d02d8a303
commit 6dea2a5094

View File

@@ -178,28 +178,12 @@ export default class AutoAnimate {
let fromProps = this.getAutoAnimatableProperties( 'from', from, elementOptions ), let fromProps = this.getAutoAnimatableProperties( 'from', from, elementOptions ),
toProps = this.getAutoAnimatableProperties( 'to', to, elementOptions ); toProps = this.getAutoAnimatableProperties( 'to', to, elementOptions );
// Maintain fragment visibility for matching elements when
// we're navigating forwards, this way the viewer won't need
// to step through the same fragments twice
if( to.classList.contains( 'fragment' ) ) { if( to.classList.contains( 'fragment' ) ) {
// Don't auto-animate the opacity of fragments to avoid // Don't auto-animate the opacity of fragments to avoid
// conflicts with fragment animations // conflicts with fragment animations
delete toProps.styles['opacity']; delete toProps.styles['opacity'];
if( from.classList.contains( 'fragment' ) ) {
let fromFragmentStyle = ( from.className.match( FRAGMENT_STYLE_REGEX ) || [''] )[0];
let toFragmentStyle = ( to.className.match( FRAGMENT_STYLE_REGEX ) || [''] )[0];
// Only skip the fragment if the fragment animation style
// remains unchanged
if( fromFragmentStyle === toFragmentStyle && animationOptions.slideDirection === 'forward' ) {
to.classList.add( 'visible', 'disabled' );
}
}
} }
// If translation and/or scaling are enabled, css transform // If translation and/or scaling are enabled, css transform
@@ -471,7 +455,7 @@ export default class AutoAnimate {
// Text // Text
this.findAutoAnimateMatches( pairs, fromSlide, toSlide, textNodes, node => { this.findAutoAnimateMatches( pairs, fromSlide, toSlide, textNodes, node => {
return node.nodeName + ':::' + node.innerText; return node.nodeName + ':::' + node.textContent.trim();
} ); } );
// Media // Media
@@ -481,7 +465,7 @@ export default class AutoAnimate {
// Code // Code
this.findAutoAnimateMatches( pairs, fromSlide, toSlide, codeNodes, node => { this.findAutoAnimateMatches( pairs, fromSlide, toSlide, codeNodes, node => {
return node.nodeName + ':::' + node.innerText; return node.nodeName + ':::' + node.textContent.trim();
} ); } );
pairs.forEach( pair => { pairs.forEach( pair => {