instant.page ist ein ziemlich cooles Projekt von Alexandre Dieulot. Alexandre arbeitet schon seit einem halben Jahrzehnt an dieser Idee, denn InstantClick ist von ihm und ist im Grunde genau dieselbe Idee.
Die Idee ist, dass es eine deutliche Verzögerung zwischen dem Hovern über einen Link und dem Klicken auf diesen Link gibt. Sagen wir, es dauert 300 ms Verzögerung. Diese 300 ms hätten genutzt werden können, um die nächste Seite vorab zu laden. Und wenn Sie diese Zeit tatsächlich zum Vorabladen nutzen, lädt diese Seite umso schneller.
Dieses neue Projekt nutzt neuere Technologien, um dies zu erreichen. Es ist kaum Code, dessen Kern darin besteht, den Link, den Sie anklicken/berühren möchten, zum Dokument hinzuzufügen.
Die Seite ermutigt Sie, das Skript direkt zu verlinken, was mögliche Cache-Treffer bedeutet, falls Sie eine Seite, die dies verwendet, bereits besucht haben. Es ist nicht riskant auf die gleiche Weise wie andere JavaScript-Drittanbieter, da das Attribut integrity bedeutet, dass es, wenn Sie dem Code so vertrauen, wie er jetzt ist, niemals geändert werden kann, es sei denn, Sie ändern dieses Attribut mit ihm. Es verwendet auch geschickt type="module", um zu verhindern, dass es in Browsern geladen wird, die Prefetching ohnehin nicht unterstützen.
Dennoch könnten Sie es selbst hosten, wenn Sie möchten. Ich habe keine Ahnung, wer für die Bandbreite hier aufkommt, daher ist ein weiteres Risiko ein hängendes Skript, falls es eines Tages nicht mehr reagiert.
Man könnte argumentieren, dass es das Prefetching nicht so absolut verantwortungsvoll durchführt, wie es könnte. Googles ähnliche Quicklink-Bibliothek (die wir hier behandelt haben) macht zwei interessante Dinge, um verantwortungsvoller mit Prefetching umzugehen: 1) Warten auf requestIdleCallback und 2) Respektiert Informationen von navigator.connection, wie z. B. die Aktivierung des Datensparmodus durch einen Benutzer.
Ich habe vor ein paar Tagen ein WP-Plugin daraus gemacht, falls jemand es ohne großen Aufwand ausprobieren möchte. Ich habe auch einige grundlegende Debugging-Funktionen hinzugefügt, damit Sie in der Konsole sehen können, warum ein Link vorab geladen wurde oder nicht.
https://wordpress.org/plugins/wp-instant-links/
Das habe ich neulich über ProductHunt gesehen. Coole Sache. Die Frage ist, Chris, denkst du daran, es hier zu verwenden? Wenn nicht, warum nicht?