Resource Hints: modulepreload
- LSUsing <link rel="modulepreload">
, browsers can be informed to prefetch module scripts without having to execute them, allowing fine-grained control over when and how module resources are loaded.
Chrome
- ❌ 4 - 65: Not supported
- ✅ 66 - 128: Supported
- ✅ 129: Supported
- ✅ 130 - 132: Supported
Edge
- ❌ 12 - 18: Not supported
- ✅ 79 - 128: Supported
- ✅ 129: Supported
Safari
- ❌ 3.1 - 16.6: Not supported
- ✅ 17.0 - 17.6: Supported
- ✅ 18.0: Supported
- ✅ 18.1 - TP: Supported
Firefox
- ❌ 2 - 114: Not supported
- ✅ 115 - 129: Supported
- ✅ 130: Supported
- ✅ 131 - 133: Supported
Opera
- ❌ 9 - 52: Not supported
- ✅ 53 - 113: Supported
- ✅ 114: Supported
IE
- ❌ 5.5 - 10: Not supported
- ❌ 11: Not supported
Chrome for Android
- ✅ 129: Supported
Safari on iOS
- ❌ 3.2 - 16.7: Not supported
- ✅ 17.0 - 17.6: Supported
- ✅ 18.0: Supported
- ✅ 18.1: Supported
Samsung Internet
- ❌ 4 - 8.2: Not supported
- ✅ 9.2 - 24: Supported
- ✅ 25: Supported
Opera Mini
- ❌ all: Not supported
Opera Mobile
- ❌ 10 - 12.1: Not supported
- ✅ 80: Supported
UC Browser for Android
- ✅ 15.5: Supported
Android Browser
- ❌ 2.1 - 4.4.4: Not supported
- ✅ 129: Supported
Firefox for Android
- ✅ 130: Supported
QQ Browser
- ✅ 14.9: Supported
Baidu Browser
- ✅ 13.52: Supported
KaiOS Browser
- ❌ 2.5: Not supported
- ❌ 3: Not supported
Unlike some other link relations, changing the relevant attributes (such as as, crossorigin, and referrerpolicy) of such a link does not trigger a new fetch. This is because the document's module map has already been populated by a previous fetch, and so re-fetching would be pointless.