Rumah >hujung hadapan web >tutorial css >Bagaimanakah Saya Boleh Mendapatkan Dimensi Imej Latar Belakang DIV Menggunakan jQuery?
Menggunakan jQuery untuk Mendapatkan Dimensi Imej Latar Belakang DIV
Berusaha untuk menentukan dimensi imej latar belakang DIV dalam jQuery boleh menjadi cabaran, terutamanya apabila kaedah terbina dalam kelihatan gagal. Nasib baik, terdapat penyelesaian yang memanfaatkan kuasa objek Imej untuk mengatasi halangan ini.
Pada asalnya, adalah dipercayai bahawa baris mudah "jQuery('#myDiv').css('background-image') .tinggi();" akan mencukupi untuk mendapatkan ketinggian imej latar belakang. Walau bagaimanapun, pendekatan ini menghadapi ralat yang menunjukkan bahawa hasilnya bukan fungsi.
Kunci kejayaan terletak pada mengenali bahawa imej latar belakang disimpan sebagai URL dan bukannya imej sebenar. Untuk mengakses dimensi, kita perlu mengekstrak URL terlebih dahulu. Ini boleh dilakukan menggunakan kod berikut:
var image_url = jQuery('#myDiv').css('background-image').match(/^url\("?(.+?)"?\)$/);
Setelah URL diperoleh, kami mencipta objek Imej dan memuatkan imej. Setelah dimuatkan, objek akan mendedahkan dimensi yang diingini:
if (image_url[1]) { image_url = image_url[1]; var image = new Image(); $(image).load(function() { alert(image.width + 'x' + image.height); }); image.src = image_url; }
Kaedah ini memastikan imej sebenar dimuatkan dan dimensi diperoleh dengan tepat. Selain itu, ia menyokong pelbagai bentuk penetapan URL, termasuk yang mempunyai petikan atau kurungan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Dimensi Imej Latar Belakang DIV Menggunakan jQuery?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!