Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Menggantikan Imej Patah dengan jQuery atau JavaScript Biasa?

Bagaimanakah Saya Boleh Menggantikan Imej Patah dengan jQuery atau JavaScript Biasa?

Linda Hamilton
Linda Hamiltonasal
2024-12-16 21:58:14160semak imbas

How Can I Replace Broken Images with jQuery or Plain JavaScript?

Menggantikan Imej Rosak dengan jQuery

Memiliki imej rosak dipaparkan pada halaman web boleh mengecewakan pengguna. Nasib baik, JavaScript menyediakan pelbagai kaedah untuk menangani isu ini.

Satu pendekatan ialah menggunakan keupayaan penapisan jQuery untuk mengenal pasti dan menggantikan imej yang rosak. Untuk melakukan ini:

  1. Gunakan pemilih $("img") jQuery untuk mendapatkan semua imej pada halaman.
  2. Tapis set imej menggunakan fungsi .error() untuk mengenal pasti rosak imej.
  3. Untuk setiap imej yang rosak, gantikan atribut src dengan imej gantian yang diingini, seperti "tiada imej" lalai pemegang tempat.

Walau bagaimanapun, untuk kesederhanaan, selalunya lebih mudah menggunakan JavaScript tulen untuk mengendalikan imej yang rosak.

Penyelesaian JavaScript:

The Peristiwa onError boleh digunakan untuk menetapkan semula atribut sumber apabila imej gagal load:

function imgError(image) {
    image.onerror = "";
    image.src = "/images/noimage.gif";
    return true;
}

Laksanakan fungsi ini dalam HTML:

<img src="image.png" onerror="imgError(this);"/>

Sebagai alternatif, acara onError boleh dikendalikan terus dalam HTML tanpa fungsi:

<img src="image.png" onError="this.onerror=null;this.src='/images/noimage.gif';" />

Rujuk jadual berikut untuk keserasian penyemak imbas dengan ralat kemudahan:

http://www.quirksmode.org/dom/events/error.html

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggantikan Imej Patah dengan jQuery atau JavaScript Biasa?. 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