Heim >Web-Frontend >js-Tutorial >Wie kann ich mit JavaScript/jQuery Dateien in einem neuen Tab oder Fenster herunterladen, ohne die aktuelle Seite zu ersetzen?
Problem:
Wie initiieren Sie einen Dateidownload manuell in einem separaten Tab oder Fenster, während das Standardverhalten vermieden wird, bei dem die aktuelle Seite durch die heruntergeladene Datei ersetzt wird JavaScript/jQuery?
Lösung:
So laden Sie eine Datei in einem neuen Tab oder Fenster herunter, ohne die aktuelle Seite zu unterbrechen:
Verwenden ein unsichtbarer Iframe:
Diese Methode erstellt einen unsichtbaren Iframe und weist die Download-URL seinem Quellcode zu Attribut:
<iframe>
Dies löst den Download im Hintergrund aus. Um sicherzustellen, dass der Browser nicht darstellbare Dateien (z. B. HTML, Text) herunterlädt, muss der Server den MIME-Typ der Datei auf einen unsinnigen Wert wie application/x-please-download-me oder application/octet-stream setzen.
In einem neuen Tab öffnen (jQuery):
Um die Datei in einem neuen Tab zu öffnen, verwenden Sie jQuery zum Festlegen Setzen Sie das Zielattribut des Links auf _blank und geben Sie die URL der Datei im href-Attribut an:
$('a#someID').attr({ target: '_blank', href: 'http://localhost/directory/file.pdf' });
Wenn auf den Link geklickt wird, wird die Datei je nach Browsereinstellungen in einem neuen Tab oder Fenster heruntergeladen.
Das obige ist der detaillierte Inhalt vonWie kann ich mit JavaScript/jQuery Dateien in einem neuen Tab oder Fenster herunterladen, ohne die aktuelle Seite zu ersetzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!