• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Download nach Laden eines Pixelbildes starten

romik

New member
Hallo zusammen,

ich habe einen Link mit eindeutigen Data-Attributen, an denen ich den Link identifizieren kann.
Sobald ein Link mit diesen Data-Attributen geklickt wird, wird ein Pixelbild geladen -> tracking = new Image();
Dazu setzte ich ein src für tracking.

Sobald das Bild geladen wurde, soll der Download gestartet werden. Die Datei befindet sich im href.

Wie kann ich das umsetzten?

Mit window.location bekomme ich es nicht hin, da wird das Bild auf der Seite angezeigt, anstatt es runterzuladen.
 
download Attribut setzen (HTML5) oder das Bild mit php ausliefern und dort die benötigten header setzen.
 
Du könntest einen <a href="http://forum.jswelt.de/javascript/..."> erzeugen, dem du einen Wert für das download-Attribut (ist dann der Dateiname, der für den Download vorgeschlagen wird) gibst. Dann simulierst du mit der .click() Methode einen Klick auf das <a>
Zur Sicherheit würde ich dem <a> noch ein target="_blank" geben. Dann wird bei Browsern, die das download-Attribut nicht unterstützen, die Datei in einem neuen Tab/Fenster geöffnet. Aber da die Aktion dann asynchron zum eigentlichen Linkklicken geschieht, wirst du dann in diesem Fall Probleme mit dem Popup-Blocker bekommen.

Aber warum willst du eigentlich mit dem Download warten, bis das Bild geladen ist? Warum willst du das nicht parallel machen?

Mit window.location bekomme ich es nicht hin, da wird das Bild auf der Seite angezeigt, anstatt es runterzuladen.
Auf welches Bild beziehst du dich hier? Ist die Datei, die runtergeladen werden soll auch ein Bild?
 
Zurück
Oben