Rumah > hujung hadapan web > tutorial js > Bagaimanakah saya boleh menentukan saiz fail dan dimensi imej menggunakan JavaScript?

Bagaimanakah saya boleh menentukan saiz fail dan dimensi imej menggunakan JavaScript?

Mary-Kate Olsen
Lepaskan: 2024-11-23 05:23:14
asal
964 orang telah melayarinya

How can I determine the file size and dimensions of an image using JavaScript?

Menentukan Saiz dan Dimensi Fail Imej dengan Javascript

Dalam aplikasi web, adalah perlu untuk mendapatkan maklumat tentang imej yang dipaparkan pada halaman web. Satu keperluan biasa adalah untuk menentukan saiz dan resolusi fail imej sepenuhnya dalam konteks penyemak imbas. Artikel ini meneroka pelbagai teknik silang penyemak imbas untuk menyelesaikan tugas ini.

Mendapatkan Dimensi Imej

Untuk menentukan resolusi imej yang dipaparkan pada halaman web, anda boleh menggunakan sifat clientWidth dan clientHeight bagi elemen DOM yang mengandungi imej. Pendekatan ini mengembalikan dimensi piksel imej dalam penyemak imbas, tidak termasuk sebarang sempadan atau jidar.

var img = document.getElementById('imageId');

var width = img.clientWidth;
var height = img.clientHeight;
Salin selepas log masuk

Mengambil Saiz Fail

Untuk mendapatkan saiz fail imej, satu pilihan ialah menggunakan sifat fileSize yang tersedia dalam Internet Explorer untuk elemen dokumen dan IMG. Walau bagaimanapun, pendekatan ini terhad kepada IE dan tidak disokong dalam penyemak imbas lain.

Menggunakan Permintaan HTTP HEAD

Teknik yang lebih serba boleh ialah mengeluarkan permintaan HTTP HEAD kepada URL imej. HEAD meminta untuk mendapatkan semula metadata tentang sumber tanpa memuat turun kandungannya. Pengepala respons termasuk Panjang Kandungan, yang mewakili saiz fail dalam bait.

var xhr = new XMLHttpRequest();
xhr.open('HEAD', 'img/test.jpg', true);
xhr.onreadystatechange = function(){
  if (xhr.readyState == 4) {
    if (xhr.status == 200) {
      alert('Size in bytes: ' + xhr.getResponseHeader('Content-Length'));
    } else {
      alert('ERROR');
    }
  }
};
xhr.send(null);
Salin selepas log masuk

Nota: Permintaan Ajax tertakluk pada dasar asal yang sama, bermakna mereka hanya boleh mengakses sumber daripada domain yang sama dengan halaman web.

Mendapatkan Imej Asal Dimensi

Untuk menentukan dimensi asal imej sebelum mengubah saiz atau memangkas, anda boleh mencipta elemen IMG secara pengaturcaraan dan menetapkan acara onloadnya untuk mendapatkan semula dimensinya.

var img = document.createElement('img');

img.onload = function() { alert(img.width + ' x ' + img.height); };

img.src='http://sstatic.net/so/img/logo.png';
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah saya boleh menentukan saiz fail dan dimensi imej menggunakan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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