instant.page

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

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.

Direkter Link →