Shift8 ScrollShot
Shift8 ScrollShot
Description
Shift8 ScrollShot turns a tall image into a scrolling screenshot preview. Add the wrapper and image classes, then adjust the behavior with data attributes. It works in regular templates, block markup, and most page builders.
Features:
- Automatic loop or scroll-linked movement
- Configurable pause timing
- Optional browser-style frame with traffic-light dots
- Per-instance configuration via data attributes
- Multiple independent instances on one page
- Respects
prefers-reduced-motion - No jQuery dependency
Usage
- Add a container element and give it the CSS class
s8-scrollshot. - Add an image inside that container and give the image the CSS class
s8-scrollshot__image. - (Optional) Add data attributes to the container or image to configure the behavior.
Data attributes can be placed on either the wrapper or the image. If the same attribute appears on both, the wrapper value takes priority.
Page Builder Setup
In visual builders such as Bricks or Elementor:
- Add a container or section element and apply the CSS class
s8-scrollshot. - Add an image element inside it and apply the CSS class
s8-scrollshot__image. - Use the builder’s custom attributes panel to add any
data-*attributes.
Plain HTML Example
<div class="s8-scrollshot" data-mode="auto" data-duration="15000">
<img class="s8-scrollshot__image" src="screenshot.png" alt="Screenshot">
</div><h3>Data Attributes</h3>
All configuration is done through HTML data attributes on the .s8-scrollshot container or the .s8-scrollshot__image element. Wrapper values take priority over image values.
data-mode–autoorscroll(default:auto)data-duration– Total cycle time in milliseconds (default:12000)data-end-pause– Hold time at top and bottom in milliseconds (default:1500)data-pause-on-hover–trueorfalse(default:true)data-reverse–trueorfalse, controls bounce direction (default:true)data-frame–noneorbrowser(default:none)data-viewport-height– Visible area height in pixels (default:700)data-viewport-width– Viewport width in pixels,0for auto (default:0)data-easing– Any CSS easing string (default:ease-in-out)
Installation
- Upload the
shift8-scrollshotfolder to/wp-content/plugins/. - Activate the plugin through the Plugins screen in WordPress.
Faq
No. The plugin scans the DOM for .s8-scrollshot and .s8-scrollshot__image classes regardless of which theme or page builder rendered them. It works with Bricks, Elementor, Gutenberg blocks, hand-coded HTML, or any other setup.
Yes. Each .s8-scrollshot instance is independent.
The image stays static.
Set a width on the container element, or use the data-viewport-width attribute with a pixel value. The image fills the viewport width by default.
Increase data-duration. For a slow scroll, try 15000 or 20000 (15-20 seconds per cycle). Also increase data-end-pause for longer holds at each end.
Reviews
Changelog
1.0.2
- Harden data attribute parsing and animation setup.
1.0.1
- Move runtime CSS and JavaScript to
frontend-assets. - Add WordPress.org plugin page assets.
1.0.0
- Initial release.
