Demos / Tilt the iPad

Tilt it.

Safari on iOS / iPadOS requires that you ask permission, on a user gesture, before delivering motion events. Tap the button, allow it, then move the iPad.

Waiting for permission
α (z)
β (x)
γ (y)

What's happening

On a click handler we feature-detect DeviceOrientationEvent.requestPermission. If it exists (i.e. we're on iOS / iPadOS), we call it; otherwise we just attach the listener directly. Once granted, the page receives deviceorientation events with three angles — alpha, beta, and gamma — that we map onto a stack of nested rings.

Permission is per-origin and per-session in iOS. If you refuse, the page stays in its waiting state.