Quaker Oats

Interactive ad for Quaker Oats with a 3-layer parallax food waterfall animation, iScroll-powered product gallery, and split desktop/mobile architecture.
Overview
Full-screen ad for Quaker Oats that opens with a cinematic food waterfall: ingredients cascading across three parallax layers into a bowl. topFoodLayer, midFoodLayer, and backFoodLayer animate downward at staggered rates (1.8x, 1.9x, 1.95x of base duration) using TweenMax, with a CSS clip:rect() mask on the foodWaterfall container that shrinks upward to create the illusion of ingredients falling into a bowl. After the intro, users browse a 4-product gallery (Apple Walnut, Summer Berry, Peach Almond, Blueberry Hazelnut) with per-product detail panels and "Learn More" CTAs.
The desktop and mobile experiences are architecturally separate — three completely separate DOM trees (contentBodyDesktop, contentBodyTablet, contentBodyMobile), each with its own carousel logic, arrow handlers, and product arrays.
Context
The food waterfall was the hardest part of this build. The three food layers needed to cascade at slightly different speeds to create depth, but the masking was the real challenge — I animated clip:rect() coordinates via TweenMax to shrink the visible region of the waterfall container upward, making it look like the ingredients were falling into the bowl rather than just sliding down the screen. The percentChanged/invertPercentChanged scaling system was my solution for making the intro animation work at any viewport size: it calculates a scale factor from the viewport dimensions, applies it to the intro container, then inverts it for child element positioning so everything stays proportionally correct. Android got a separate code path for the carousel transitions — TweenMax opacity crossfades on iOS, direct CSS property swaps on Android, because the older Android WebViews at the time couldn't handle concurrent opacity tweens without stuttering.
How It Works
Waterfall
Three parallax food layers animate downward at different rates: almonds, berries, and oat flakes cascade past a centered bowl. Spoon animates in from below.
Intro Copy
Headline copy reveals in sequence (copy0, copy1). Bowl and food layers settle. Transition to product gallery.
Browse
Desktop: left/right arrows cycle through 4 products. Product image on left, title and CTA on right. Mobile: iScroll-powered touch gallery with swipe navigation.
Learn More
Per-product CTA buttons deep link to product pages with unique click IDs per flavor.
Engineering
3-Layer Food Waterfall
topFoodLayer, midFoodLayer, backFoodLayer animate at staggered rates using GreenSock, creating a parallax cascade effect. Each layer has independently positioned food elements.
iScroll Touch Engine
iScroll v4.2 handles touch scrolling within the ad container. Native scroll is disabled (ad iframes block it), so iScroll provides momentum-based scrolling with CSS transform positioning.
Split Gallery Architecture
contentBodyDesktop and contentBodyMobile are separate DOM trees. Desktop uses a left-content (product images) + right-content (info panel) layout with arrow navigation. Mobile uses a vertical scroll layout.
Per-Product Click Tracking
Each flavor has its own data-utclickid (2-5) and CTA button, enabling per-product click attribution in campaign analytics.
Engineering Decisions
A static bowl of oatmeal is forgettable. Cascading ingredients at different depths creates movement and appetite appeal: the food feels alive and fresh.
Ad iframes don't support native scrolling reliably. iScroll takes over touch events and translates them into CSS transform-based position changes, giving smooth momentum within the container.
Desktop uses a side-by-side product + info layout, mobile uses stacked cards. These are different interaction models, not just different sizes: sharing DOM would create conditional complexity.
Quaker wanted to measure which flavors drove the most interest. 4 unique click IDs let them correlate ad engagement to product page visits per SKU.
Project stack
More projects

Nabisco Wheat Thins
CPG campaign with flavor exploration, snacking-occasion showcase, and taste-profile interaction

Nabisco Oreos
Playful CPG campaign with interactive cookie mechanics (twist, lick, dunk), spring-eased animations, and seasonal flavor gallery

Nabisco Ritz
CPG campaign with interactive topping builder, recipe gallery, and occasion-themed seasonal reskinning