Verwenden von Skript zum Zwischenspeichern von Bildern

Lesezeit: 2 Minuten

Benutzer-Avatar
Adola

Ich verwende TimThumb, ein PHP-Skript zum Ändern der Größe von Bildern.

Das Bild wird zwischengespeichert, und meine Webanwendung ist auf dieses Caching angewiesen, um ordnungsgemäß zu funktionieren.

Wenn das Bild nicht auf dem Server zwischengespeichert ist, funktioniert es nicht richtig. Ich frage mich, ob es eine Möglichkeit gibt, Timthumb zu zwingen, ein Bild zwischenzuspeichern und es dann abzurufen, oder ob es eine Möglichkeit gibt, JavaScript zu verwenden, um das Bild sicherzustellen wird zuerst zwischengespeichert.

  • mögliches Duplikat von How do you cache an image in Javascript

    – Lix

    28. Juli 2012 um 11:54 Uhr

Benutzer-Avatar
Lix

Um sicherzustellen, dass der Browser ein Bild vorab in den Cache lädt, können Sie einige native JavaScript-Objekte verwenden.

var imgPreload = new Image();
imgPreload.src = PATH_TO_IMAGE;

Jetzt, wenn Sie eine geben <img> tag ein src Attribut, das dasselbe ist wie PATH_TO_IMAGEwurde es bereits vom Browser vorgeladen.

<img src="PATH_TO_IMAGE" width="100%" >

Sie könnten auch einige Bilder in Ihren HTML-Code laden und sie einfach mit einigen CSS-Tricks verstecken –

  • display:none

    oder

  • visibility:hidden

zeigen sie dann erst an, wenn sie vollständig geladen sind. Du könntest die verwenden .load() Funktion dafür. Befestigen Sie es einfach an der <img> Schild –

$("#imageSelector").load(function(){
  // image was fully loaded.
});

  • Ich bin mir nicht sicher, wie ich dieses HTML-Objekt verwenden soll. Benutze ich die Variable imgPreload gerade als ob ich verwenden würde <img src="PATH_TO"/> ?

    – Adola

    28. Juli 2012 um 0:11 Uhr

  • Die Idee ist, wenn Sie dieses Bild anzeigen – es wurde bereits von diesen beiden Codezeilen geladen.

    – Lix

    28. Juli 2012 um 0:13 Uhr

  • Richtig, aber ich kann keine Dokumentation zu Image() finden; Ich gebe eine Zeichenfolge mit meinen HTML-Elementen zurück, und wenn ich sie einschließe imgPreloades kehrt zurück [[object HTMLImageElement]]

    – Adola

    28. Juli 2012 um 0:18 Uhr

  • nvm, müssen Sie verwenden '<img src="'+imgPreload.src+'"/>'

    – Adola

    28. Juli 2012 um 0:25 Uhr

  • @ado – ja, sorry, ich habe vergessen zu erklären, dass Sie wirklich nichts weiter tun müssen, als diese beiden Codezeilen auszuführen. Das Bild wird von derselben URL geladen, wenn Sie verwenden imgPreload.src oder sogar explizit die direkte URL an die Bilddatei übergeben.

    – Lix

    28. Juli 2012 um 11:52 Uhr

1367690cookie-checkVerwenden von Skript zum Zwischenspeichern von Bildern

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy