Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Muat Turun URL Data dalam JavaScript: Penyelesaian Chrome dan Firefox?

Bagaimana untuk Muat Turun URL Data dalam JavaScript: Penyelesaian Chrome dan Firefox?

Barbara Streisand
Lepaskan: 2024-11-27 02:54:14
asal
718 orang telah melayarinya

How to Download Data URLs in JavaScript: A Chrome and Firefox Solution?

Memuat turun URL Data dalam JavaScript

Dalam percubaan untuk mencipta utiliti zip/nyahzip berasaskan JavaScript, anda telah menghadapi masalah dengan memuat turun fail yang dikodkan dalam URL data. Walaupun pendekatan ini berfungsi dalam Firefox, ia gagal dalam Chrome.

Dilema Chrome

Chrome tidak menyokong muat turun terus URL data. Sebaliknya, ia membenamkannya sebagai imej apabila dirujuk menggunakan teg img. Ini menimbulkan masalah untuk format fail bukan imej.

Penyelesaian

Nasib baik, ada penyelesaian untuk mendayakan muat turun URL data dalam Chrome dan Firefox. Penyelesaiannya melibatkan mencipta elemen sementara, menetapkan atribut muat turunnya kepada nama fail yang diingini dan memberikan URL data kepada atribut hrefnya.

Contoh Kod

Yang berikut Fungsi JavaScript, muat turunURI, melaksanakan ini penyelesaian:

function downloadURI(uri, name) {
  var link = document.createElement("a");
  link.download = name;
  link.href = uri;
  document.body.appendChild(link);
  link.click();
  document.body.removeChild(link);
  delete link;
}
Salin selepas log masuk

Penggunaan

Untuk menggunakan fungsi ini, sediakan URL data dan nama fail muat turun yang dikehendaki sebagai argumen:

downloadURI("data:text/html,HelloWorld!", "helloWorld.txt");
Salin selepas log masuk

Pendekatan ini akan menggesa dialog muat turun dalam kedua-dua Chrome dan Firefox, membolehkan pengguna menyimpan fail dengan nama fail yang ditentukan.

Atas ialah kandungan terperinci Bagaimana untuk Muat Turun URL Data dalam JavaScript: Penyelesaian Chrome dan Firefox?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan