Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Muat Turun Fail dalam Tab atau Tetingkap Baharu Menggunakan JavaScript/jQuery Tanpa Menggantikan Halaman Semasa?

Bagaimanakah Saya Boleh Muat Turun Fail dalam Tab atau Tetingkap Baharu Menggunakan JavaScript/jQuery Tanpa Menggantikan Halaman Semasa?

Linda Hamilton
Linda Hamiltonasal
2024-12-15 21:44:11954semak imbas

How Can I Download Files in a New Tab or Window Using JavaScript/jQuery Without Replacing the Current Page?

Memuat Turun Fail Menggunakan JavaScript/jQuery Tanpa Menggantikan Halaman Semasa

Masalah:
Bagaimanakah anda memulakan muat turun fail secara manual dalam berasingan tab atau tetingkap, sambil mengelakkan tingkah laku lalai menggantikan halaman semasa dengan fail yang dimuat turun menggunakan JavaScript/jQuery?

Penyelesaian:

Untuk memuat turun fail dalam tab atau tetingkap baharu tanpa mengganggu halaman semasa:

Menggunakan Iframe Halimunan:

Kaedah ini mencipta iframe halimunan dan memperuntukkan muat turun URL ke atribut srcnya:

<iframe>

Ini mencetuskan muat turun di latar belakang. Untuk memastikan penyemak imbas memuat turun fail yang tidak boleh ditukar (cth., HTML, teks), pelayan mesti menetapkan jenis MIME fail kepada nilai yang tidak masuk akal seperti application/x-please-download-me atau application/octet-stream.

Membuka dalam Tab Baharu (jQuery):

Untuk membuka fail dalam tab baharu, gunakan jQuery untuk menetapkan atribut sasaran pautan ke _blank dan nyatakan URL fail dalam atribut href:

$('a#someID').attr({
  target: '_blank',
  href: 'http://localhost/directory/file.pdf'
});

Apabila pautan diklik, fail akan dimuat turun dalam tab atau tetingkap baharu, bergantung pada tetapan penyemak imbas.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Muat Turun Fail dalam Tab atau Tetingkap Baharu Menggunakan JavaScript/jQuery Tanpa Menggantikan Halaman Semasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn