JS Interaction Loader delays heavy JavaScript execution until user interaction is detected. This helps prioritize critical content rendering and reduces initial blocking time.
15.1 Overview #
Instead of executing all JavaScript immediately, SpeedyGo waits for a user interaction trigger before loading non-critical or heavy JS files.
Supported triggers:
- Click
- Scroll
- Touch
- Mouse movement
Until interaction happens:
- Heavy JS files remain deferred
- Render blocking is minimized
This significantly improves:
- Largest Contentful Paint (LCP)
- Total Blocking Time (TBT)
- Initial page load speed
How It Works Internally #
- Wraps non-critical scripts in deferred execution logic
- Listens for interaction events (click, scroll, etc.)
- Triggers JS loading dynamically after interaction
- Ensures critical inline scripts remain unaffected
15.2 Settings #
Enable JS Interaction Loader #
- Toggle Enable JS Interaction → ON
Once enabled, SpeedyGo will defer eligible non-critical JavaScript until interaction is detected.
15.3 Recommended Usage #
Recommended for:
- Marketing websites
- Blogs
- Static content sites
Use caution on:
- Real-time dashboards
- Critical JS-based applications
15.4 Best Practice Recommendation #
- Test forms, sliders, and popups after enabling
- Exclude mission-critical scripts if needed
- Clear cache and re-test performance metrics
JS Interaction Loader optimizes initial rendering while maintaining full functionality after user engagement.