Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mendapatkan URL Data Imej dalam JavaScript Tanpa Memuat Turun Semula?

Bagaimanakah Saya Boleh Mendapatkan URL Data Imej dalam JavaScript Tanpa Memuat Turun Semula?

Barbara Streisand
Barbara Streisandasal
2024-12-23 18:10:18581semak imbas

How Can I Get an Image's Data URL in JavaScript Without Redownloading It?

Mendapatkan URL Data Imej dalam JavaScript

Soalan ini mencari kaedah untuk mendapatkan semula URL data imej yang telah dimuatkan pada laman web menggunakan JavaScript, khusus untuk digunakan dalam skrip Greasemonkey dengan Firefox. Objektifnya adalah untuk mendapatkan kandungan yang dikodkan base64 bagi imej tanpa memerlukan overhed untuk memuat turunnya semula.

Penyelesaian:

  1. Buat Kanvas Elemen: Cipta elemen kanvas kosong dengan dimensi yang sepadan dengan imej dikodkan.
  2. Salin Data Imej: Gunakan fungsi "drawImage" untuk menyalin data imej ke elemen kanvas. Langkah ini mengandaikan bahawa imej telah dimuatkan sepenuhnya.
  3. Dapatkan Data-URL: Gunakan fungsi "toDataURL" untuk mendapatkan semula data-URL dalam format yang dikehendaki, yang boleh sama ada PNG atau JPEG. Penyelesaian yang disediakan menggunakan RegExp untuk mengekstrak kandungan yang dikodkan base64 sahaja daripada data-URL.

Nota:

a. Kaedah ini hanya berfungsi apabila imej dihoskan pada domain yang sama dengan halaman web.
b. Imej yang terhasil ialah versi yang dikod semula, bukan replika tepat bagi fail asal.
c. Kod JavaScript yang disediakan menganggap persekitaran Greasemonkey.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan URL Data Imej dalam JavaScript Tanpa Memuat Turun Semula?. 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