---
name: thedaviddias/scrolljacking
source: https://app.decimal.ai/s/thedaviddias-scrolljacking@1/SKILL.md
source_sha256: 3ee76745d600
---

# Avoid scrolljacking and custom scroll behavior

Scrolljacking breaks user expectations, interferes with assistive technologies, and creates unpredictable experiences that frustrate users with motor impairments or cognitive disabilities.

## Quick Reference

- Never override native scroll speed or direction
- Avoid scroll-triggered navigation (one page per scroll)
- Scrolljacking breaks assistive technologies and user expectations
- If custom scrolling is essential, provide a way to disable it

## Check

Test scrolling behavior and verify it feels native. Check that scroll speed is not modified, scroll direction is not inverted, and scroll events are not hijacked for animations or navigation without user consent.

## Fix

Remove JavaScript that overrides default scroll behavior. If custom scrolling is essential, respect prefers-reduced-motion and provide a way to disable custom scroll effects.

## Explain

Explain how scrolljacking disrupts expected navigation patterns, interferes with assistive technologies, and creates unpredictable experiences for users with motor impairments or cognitive disabilities.

## Code Review

Review the rendered markup and interactive states that affect Avoid scrolljacking and custom scroll behavior. Flag exact elements, roles, labels, focus behavior, or keyboard interactions that violate the rule, and note how to verify the fix with browser accessibility tooling or assistive tech.

---

For full implementation details, code examples, and framework-specific guidance,
see `references/rule.md`.

Rule page: https://frontendchecklist.io/en/rules/accessibility/scrolljacking