Hi,
Es funktioniert auch prinzipiell mit allerdings 3 Problemen:
- er erstellt jedesmal einen Iframe. Den kann man vermutlich unsichtbar machen und bei mehrmaligen klicks recyclen.
oder man benutzt window.open.
Oder schlicht und einfach location.href = "data:..."
- da ich Textdateien erstellen will, öffnet er die Datei im erstellten Iframe. hier könnte ich einen nicht darstellbaren Mime-Typ nehmen und hoffen, dass der, der den Button klickt, kein Plugin für ebend jenen Mime-Typ hat.
Gibts einen Typen, der sich speziell anbieten würde?
application/octet-stream - kennzeichnet unspezifizierte Binärdaten. Sollte bei Text in ASCII oder UTF-8 kodiert ebenfalls funktionieren.
- Der Dateiname ist äußerst komisch. Hier habe ich noch keinen Würgaround gefunden.
Da sehe ich bei Nutzung von data-URIs auch keinen. Aber den vorgeschlagenen Dateinamen kann der Nutzer im Download-Dialog ja problemlos ändern.
gibts eigentlich stadnard-javascript Funktionen für die Base64 en/decodierung?
schließlich muss die sowiso jeder browser enthalten.
Nö, muss nicht.
Die Daten müssen nicht Base64-kodiert werden, URL-Kodierung (encodeURIComponent) tut's auch.
MfG ChrisB
--
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?