Nothing animates
- Check the class spelling. Effect classes are kebab-case:
fx-text-reveal-st, notfx-textReveal-st. - Check the trigger suffix. A bare class like
fx-revealonly animates inside a<section>(or your section selector) — see Trigger Modes. If your container isn't a<section>, either add-stto the class or add your container's selector (e.g..wp-block-group) to Section selector. - Check the browser console for
[FX] Missing dependencies— this means GSAP, ScrollTrigger or SplitText didn't load beforefx.js. On WordPress this shouldn't happen (the plugin enqueues all four in order); outside WordPress, check your script tag order — see Using Without WordPress. - Check Never animate / exclude selectors on the Settings tab — an element matching that selector is skipped even with a valid
fx-*class.
My content is invisible / the whole page is blank
This is almost always the FOUC prevention CSS hiding elements permanently instead of temporarily. On a site using the Fancoolo FX plugin this is handled automatically — if you're still seeing it, it usually means:
- Respect reduced motion is on (the default) and your OS or browser has "reduce motion" enabled, so the reveal that lifts the hidden state never runs. This is expected behavior, not a bug — reduced-motion visitors should see content immediately without animation; if they're seeing nothing, the reduced-motion companion CSS rule isn't reaching the page (check for caching/minification that might have stripped the
@mediablock). - You copied the FOUC CSS into a custom theme by hand and only added the base hidden rule, not the reduced-motion companion rule. Add both — see FOUC Prevention.
Reduced motion
With Respect reduced motion on, FX skips animations entirely when the visitor's OS asks for less motion — content should appear immediately in its final state, not stay hidden. If you want animations to always play regardless of that OS setting, turn the setting off on the Settings tab; GSAP's own inline styles then win normally.
TranslatePress
FanCoolo FX works with TranslatePress automatically — no configuration needed:
- Inside the TranslatePress translation editor, FX stands down entirely so blocks stay un-split, visible and selectable for translation.
- On translated front-end pages, text-splitting effects (Text Reveal, Type Writer, Split Words) mark their element so TranslatePress's dynamic DOM-change translator doesn't race SplitText — this is what used to cause translated headings to flicker or stick in the source language.
Both behaviors are inert on sites that don't use TranslatePress.
Debug markers
Turn on Show scroll markers on the Settings tab to draw GSAP's start/end lines on the front end for every scroll animation, so you can see exactly where each one triggers. Markers are only visible to logged-in administrators — regular visitors never see them.
My animation plays at the wrong scroll position
Adjust Start position globally on the Settings tab, or per element with the fx-start-[…] modifier class — see Modifier Classes.
My scroll animation only plays once and I want it to replay
Turn off Play only once on the Settings tab (site-wide), or pass a scroll trigger override from the JavaScript API for a single element.
Animations don't show inside the Bricks or Oxygen builder
By design. FX stands down entirely inside the Bricks and Oxygen 6 builder windows (and their canvas) — no hide CSS, no GSAP, no animations — so elements stay visible and selectable while you build. Check the live page or the builder's own preview mode to see the animation play. See Bricks and Oxygen 6.
I'm not getting plugin updates
Automatic updates need an active license. Go to Appearance → Fancoolo FX → License and activate a key — animations work either way, but only a licensed site sees updates on the Plugins page. See License.