Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.This module provides an implementation of Google Chrome Lab's Quicklink library for Drupal. Quicklink is a lightweight (< 1kb compressed) JavaScript library that enables faster subsequent page-loads by prefetching in-viewport links during idle time.
How Quicklink works
Quicklink makes navigation to subsequent pages faster. It:
- Works with all modern browsers (IE11 with the polyfill loaded)
- Detects links within the viewport (using Intersection Observer)
- Waits until the browser is idle (using requestIdleCallback)
- Checks if the user isn't on a slow connection (using
navigator.connection.effectiveType) or has data-saver enabled (usingnavigator.connection.saveData) - Prefetches URLs to the links (using
<link rel=prefetch>).
What this module provides
This is a lightweight wrapper module that provides sensible defaults. Most sites will not need to modify any configuration.
- Inserts the Quicklink library — either off of a CDN, or off the filesystem (if present).
- Works with
Drupal.behaviorsto automatically prefetch URLs that get inserted via AJAX. - By default, loads the Quicklink library only for anonymous users.
- D7 only: By default, only loads if page caching and block caching are enabled.
- Option to disable loading the Quicklink library on individual content types.
- Has an option to disable loading the Quicklink library is PHP sessions are detected (useful for Drupal Commerce sites).
- By default, ignores the prefetching of administrative links, AJAX-enabled links, and links that end with a file extension.
- Provides option to ignore URLs with hashes (#) in them.
- Provides a field for URL patterns to ignore.
- Will not prefetch if a
noprefetchhash or querystring parameter exists within the URL querystring. - Automatically ignores links that have a
noprefetchordownloadattribute. - Automatically ignores the
user/logoutlink 😎. - Provides a field to include additional domains that Quicklink will prefetch from (other than the origin domain).
- Provides a debug mode checkbox that will help you figure out why or why not a link is getting prefetched.
- Option to load Intersection Observer polyfill so Quicklink will work with older browsers.
- Lots more!
Roadmap
The 2.0.x version is stable and supports both Drupal 8, 9, and 10. The Drupal 7 version of the module is also stable.
Network requests being automatically downloaded while the user scrolls down the page.
Supporting organizations:
| Attachment | Size |
|---|---|
| Quicklink downloading files | 884.67 KB |
Project information
Maintenance fixes only
Considered feature-complete by its maintainers.- Module categories: JavaScript Utilities, Performance
3,297 sites report using this module
- Created by mherchel on , updated
Drupal 10 is here!
Drupal 10 is supported with version 2.0.2
Stable releases for this project are covered by the security advisory policy.
Look for the shield icon below.











